package view;

import controller.ControllerGUINivelPrincipal;
import controller.ControllerSudokuOnline;
import java.awt.BorderLayout;
import java.awt.Desktop;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.Observable;
import java.util.Observer;
import java.util.logging.Level;
import java.util.logging.Logger;
import model.Cronometro;
import model.ModeloSudoku;


public class GUIAlternativa extends javax.swing.JFrame implements Observer {
    private static GUIAlternativa instancia;
    private ModeloSudoku ng; 
    private ControllerGUINivelPrincipal ctrl;
    private Cronometro crono;
    
    public static GUIAlternativa getIntanciaGUIAlternativa() {
        if (instancia == null){
            throw new NullPointerException();
        }
        return instancia; 
    }  

    public  static void crearInstanciaGUIAlternativa(){
        if (instancia == null){
            instancia = new GUIAlternativa();
        }
    }

    /** Creates new form GUIAlternativa */
    public GUIAlternativa() {
        initComponents();
        PanelFondoGUIAlt fondo = new PanelFondoGUIAlt();
        this.setResizable(false);
        this.add(fondo,BorderLayout.CENTER);
        this.pack();
    }

 // Metodo para cargar los valores a la matriz de la interfaz  
    public void iniciarJuego(int [][] tableroCar) {
        crono = Cronometro.getInstanciaCronometro();
        crono.addObserver(this);   
        int valor = 0;
        for (int f = 0; f < 9; f++) {
            for (int c = 0; c < 9; c++) {
                valor = tableroCar[f][c];
                AgregarValorMatriz(f, c, valor);
            }
        }
        this.crono.iniciarCronometro();
    }
   
 // Metodo para setear los valores a la interfaz grafica             
 public void AgregarValorMatriz(int fil,int col,int val){
       
        if (val != 0){
           if (fil == 0){
            switch (col){
                case 0:  t00.setText(String.valueOf(val));
                         t00.setEditable(false);break;
                case 1:  t01.setText(String.valueOf(val));
                         t01.setEditable(false);break;
                case 2:  t02.setText(String.valueOf(val));
                         t02.setEditable(false);break;
                case 3:  t03.setText(String.valueOf(val));
                         t03.setEditable(false);break;    
                case 4:  t04.setText(String.valueOf(val));
                         t04.setEditable(false);break;
                case 5 : t05.setText(String.valueOf(val));
                         t05.setEditable(false);break;
                case 6 : t06.setText(String.valueOf(val));
                         t06.setEditable(false);break;
                case 7 : t07.setText(String.valueOf(val));
                         t07.setEditable(false);break;
                case 8 : t08.setText(String.valueOf(val));
                         t08.setEditable(false);break;
                }    
           } 
        
            if (fil == 1){
                switch (col){
                case 0:  t10.setText(String.valueOf(val));
                         t10.setEditable(false);break;
                case 1:  t11.setText(String.valueOf(val));
                         t11.setEditable(false);break;
                case 2:  t12.setText(String.valueOf(val));
                         t12.setEditable(false);break;
                case 3:  t13.setText(String.valueOf(val));
                         t13.setEditable(false);break;    
                case 4:  t14.setText(String.valueOf(val));
                         t14.setEditable(false);break;
                case 5 : t15.setText(String.valueOf(val));
                         t15.setEditable(false);break;
                case 6 : t16.setText(String.valueOf(val));
                         t16.setEditable(false);break;
                case 7 : t17.setText(String.valueOf(val));
                         t17.setEditable(false);break;
                case 8 : t18.setText(String.valueOf(val));
                         t18.setEditable(false);break;
                }    
            } 
            if (fil == 2){
                switch (col){
                case 0:  t20.setText(String.valueOf(val));
                         t20.setEditable(false);break;
                case 1:  t21.setText(String.valueOf(val));
                         t21.setEditable(false);break;
                case 2:  t22.setText(String.valueOf(val));
                         t22.setEditable(false);break;
                case 3:  t23.setText(String.valueOf(val));
                         t23.setEditable(false);break;    
                case 4:  t24.setText(String.valueOf(val));
                         t24.setEditable(false);break;
                case 5 : t25.setText(String.valueOf(val));
                         t25.setEditable(false);break;
                case 6 : t26.setText(String.valueOf(val));
                         t26.setEditable(false);break;
                case 7 : t27.setText(String.valueOf(val));
                         t27.setEditable(false);break;
                case 8 : t28.setText(String.valueOf(val));
                         t28.setEditable(false);break;
                }    
            }
            if (fil == 3){
                switch (col){
                case 0:  t30.setText(String.valueOf(val));
                         t30.setEditable(false);break;
                case 1:  t31.setText(String.valueOf(val));
                         t31.setEditable(false);break;
                case 2:  t32.setText(String.valueOf(val));
                         t32.setEditable(false);break;
                case 3:  t33.setText(String.valueOf(val));
                         t33.setEditable(false);break;    
                case 4:  t34.setText(String.valueOf(val));
                         t34.setEditable(false);break;
                case 5 : t35.setText(String.valueOf(val));
                         t35.setEditable(false);break;
                case 6 : t36.setText(String.valueOf(val));
                         t36.setEditable(false);break;
                case 7 : t37.setText(String.valueOf(val));
                         t37.setEditable(false);break;
                case 8 : t38.setText(String.valueOf(val));
                         t38.setEditable(false);break;
                }    
            }    
            if (fil == 4){
                switch (col){
                case 0:  t40.setText(String.valueOf(val));
                         t40.setEditable(false);break;
                case 1:  t41.setText(String.valueOf(val));
                         t41.setEditable(false);break;
                case 2:  t42.setText(String.valueOf(val));
                         t42.setEditable(false);break;
                case 3:  t43.setText(String.valueOf(val));
                         t43.setEditable(false);break;    
                case 4:  t44.setText(String.valueOf(val));
                         t44.setEditable(false);break;
                case 5 : t45.setText(String.valueOf(val));
                         t45.setEditable(false);break;
                case 6 : t46.setText(String.valueOf(val));
                         t46.setEditable(false);break;
                case 7 : t47.setText(String.valueOf(val));
                         t47.setEditable(false);break;
                case 8 : t48.setText(String.valueOf(val));
                         t48.setEditable(false);break;
                }    
            }    
            if (fil == 5){
                switch (col){
                case 0:  t50.setText(String.valueOf(val));
                         t50.setEditable(false);break;
                case 1:  t51.setText(String.valueOf(val));
                         t51.setEditable(false);break;
                case 2:  t52.setText(String.valueOf(val));
                         t52.setEditable(false);break;
                case 3:  t53.setText(String.valueOf(val));
                         t53.setEditable(false);break;    
                case 4:  t54.setText(String.valueOf(val));
                         t54.setEditable(false);break;
                case 5 : t55.setText(String.valueOf(val));
                         t55.setEditable(false);break;
                case 6 : t56.setText(String.valueOf(val));
                         t56.setEditable(false);break;
                case 7 : t57.setText(String.valueOf(val));
                         t57.setEditable(false);break;
                case 8 : t58.setText(String.valueOf(val));
                         t58.setEditable(false);break;
                }    
            }    
            if (fil == 6){
                switch (col){
                case 0:  t60.setText(String.valueOf(val));
                         t60.setEditable(false);break;
                case 1:  t61.setText(String.valueOf(val));
                         t61.setEditable(false);break;
                case 2:  t62.setText(String.valueOf(val));
                         t62.setEditable(false);break;
                case 3:  t63.setText(String.valueOf(val));
                         t63.setEditable(false);break;    
                case 4:  t64.setText(String.valueOf(val));
                         t64.setEditable(false);break;
                case 5 : t65.setText(String.valueOf(val));
                         t65.setEditable(false);break;
                case 6 : t66.setText(String.valueOf(val));
                         t66.setEditable(false);break;
                case 7 : t67.setText(String.valueOf(val));
                         t67.setEditable(false);break;
                case 8 : t68.setText(String.valueOf(val));
                         t68.setEditable(false);break;
                }    
            }    
            if (fil == 7){
                switch (col){
                case 0:  t70.setText(String.valueOf(val));
                         t70.setEditable(false);break;
                case 1:  t71.setText(String.valueOf(val));
                         t71.setEditable(false);break;
                case 2:  t72.setText(String.valueOf(val));
                         t72.setEditable(false);break;
                case 3:  t73.setText(String.valueOf(val));
                         t73.setEditable(false);break;    
                case 4:  t74.setText(String.valueOf(val));
                         t74.setEditable(false);break;
                case 5 : t75.setText(String.valueOf(val));
                         t75.setEditable(false);break;
                case 6 : t76.setText(String.valueOf(val));
                         t76.setEditable(false);break;
                case 7 : t77.setText(String.valueOf(val));
                         t77.setEditable(false);break;
                case 8 : t78.setText(String.valueOf(val));
                         t78.setEditable(false);break;
                }    
            }    
            if (fil == 8){
                switch (col){
                case 0:  t80.setText(String.valueOf(val));
                         t80.setEditable(false);break;
                case 1:  t81.setText(String.valueOf(val));
                         t81.setEditable(false);break;
                case 2:  t82.setText(String.valueOf(val));
                         t82.setEditable(false);break;
                case 3:  t83.setText(String.valueOf(val));
                         t83.setEditable(false);break;    
                case 4:  t84.setText(String.valueOf(val));
                         t84.setEditable(false);break;
                case 5 : t85.setText(String.valueOf(val));
                         t85.setEditable(false);break;
                case 6 : t86.setText(String.valueOf(val));
                         t86.setEditable(false);break;
                case 7 : t87.setText(String.valueOf(val));
                         t87.setEditable(false);break;
                case 8 : t88.setText(String.valueOf(val));
                         t88.setEditable(false);break;
                }    
            } 
        }
    }
     
    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        t00 = new javax.swing.JTextField();
        t20 = new javax.swing.JTextField();
        t10 = new javax.swing.JTextField();
        t02 = new javax.swing.JTextField();
        t22 = new javax.swing.JTextField();
        t12 = new javax.swing.JTextField();
        t01 = new javax.swing.JTextField();
        t21 = new javax.swing.JTextField();
        t11 = new javax.swing.JTextField();
        t03 = new javax.swing.JTextField();
        t23 = new javax.swing.JTextField();
        t14 = new javax.swing.JTextField();
        t24 = new javax.swing.JTextField();
        t04 = new javax.swing.JTextField();
        t15 = new javax.swing.JTextField();
        t25 = new javax.swing.JTextField();
        t05 = new javax.swing.JTextField();
        t13 = new javax.swing.JTextField();
        t16 = new javax.swing.JTextField();
        t18 = new javax.swing.JTextField();
        t07 = new javax.swing.JTextField();
        t08 = new javax.swing.JTextField();
        t28 = new javax.swing.JTextField();
        t06 = new javax.swing.JTextField();
        t26 = new javax.swing.JTextField();
        t17 = new javax.swing.JTextField();
        t27 = new javax.swing.JTextField();
        t57 = new javax.swing.JTextField();
        t47 = new javax.swing.JTextField();
        t51 = new javax.swing.JTextField();
        t56 = new javax.swing.JTextField();
        t31 = new javax.swing.JTextField();
        t42 = new javax.swing.JTextField();
        t52 = new javax.swing.JTextField();
        t32 = new javax.swing.JTextField();
        t40 = new javax.swing.JTextField();
        t46 = new javax.swing.JTextField();
        t30 = new javax.swing.JTextField();
        t48 = new javax.swing.JTextField();
        t50 = new javax.swing.JTextField();
        t58 = new javax.swing.JTextField();
        t36 = new javax.swing.JTextField();
        t37 = new javax.swing.JTextField();
        t38 = new javax.swing.JTextField();
        t43 = new javax.swing.JTextField();
        t45 = new javax.swing.JTextField();
        t34 = new javax.swing.JTextField();
        t35 = new javax.swing.JTextField();
        t55 = new javax.swing.JTextField();
        t33 = new javax.swing.JTextField();
        t53 = new javax.swing.JTextField();
        t44 = new javax.swing.JTextField();
        t54 = new javax.swing.JTextField();
        t41 = new javax.swing.JTextField();
        t68 = new javax.swing.JTextField();
        t67 = new javax.swing.JTextField();
        t75 = new javax.swing.JTextField();
        t73 = new javax.swing.JTextField();
        t80 = new javax.swing.JTextField();
        t78 = new javax.swing.JTextField();
        t66 = new javax.swing.JTextField();
        t88 = new javax.swing.JTextField();
        t64 = new javax.swing.JTextField();
        t65 = new javax.swing.JTextField();
        t83 = new javax.swing.JTextField();
        t74 = new javax.swing.JTextField();
        t84 = new javax.swing.JTextField();
        t71 = new javax.swing.JTextField();
        t85 = new javax.swing.JTextField();
        t63 = new javax.swing.JTextField();
        t87 = new javax.swing.JTextField();
        t76 = new javax.swing.JTextField();
        t70 = new javax.swing.JTextField();
        t60 = new javax.swing.JTextField();
        t77 = new javax.swing.JTextField();
        t81 = new javax.swing.JTextField();
        t86 = new javax.swing.JTextField();
        t61 = new javax.swing.JTextField();
        t72 = new javax.swing.JTextField();
        t82 = new javax.swing.JTextField();
        t62 = new javax.swing.JTextField();
        error = new javax.swing.JLabel();
        etiquetaCrono = new javax.swing.JLabel();
        botonRegistrarTiempo = new javax.swing.JButton();
        jMenuBar1 = new javax.swing.JMenuBar();
        jMenu1 = new javax.swing.JMenu();
        MenuItemIniciarJuego = new javax.swing.JMenuItem();
        MenuItemResolver = new javax.swing.JMenuItem();
        MenuItemSugerirJugada = new javax.swing.JMenuItem();
        jSeparator1 = new javax.swing.JPopupMenu.Separator();
        MenuItemSalir = new javax.swing.JMenuItem();
        MenuOpciones = new javax.swing.JMenu();
        MenuItemSudOnLine = new javax.swing.JMenuItem();
        MenuMejoresPartidas = new javax.swing.JMenuItem();
        MenuAyuda = new javax.swing.JMenu();
        AcercaDe = new javax.swing.JMenuItem();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("Sudoku");
        setResizable(false);

        t00.setBackground(new java.awt.Color(51, 51, 255));
        t00.setFont(new java.awt.Font("Tahoma", 0, 24));
        t00.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t00.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t00ActionPerformed(evt);
            }
        });
        t00.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t00KeyReleased(evt);
            }
        });

        t20.setBackground(new java.awt.Color(51, 51, 255));
        t20.setFont(new java.awt.Font("Tahoma", 0, 24));
        t20.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t20.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t20ActionPerformed(evt);
            }
        });
        t20.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t20KeyReleased(evt);
            }
        });

        t10.setBackground(new java.awt.Color(51, 51, 255));
        t10.setFont(new java.awt.Font("Tahoma", 0, 24));
        t10.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t10.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t10ActionPerformed(evt);
            }
        });
        t10.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t10KeyReleased(evt);
            }
        });

        t02.setBackground(new java.awt.Color(51, 51, 255));
        t02.setFont(new java.awt.Font("Tahoma", 0, 24));
        t02.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t02.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t02ActionPerformed(evt);
            }
        });
        t02.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t02KeyReleased(evt);
            }
        });

        t22.setBackground(new java.awt.Color(51, 51, 255));
        t22.setFont(new java.awt.Font("Tahoma", 0, 24));
        t22.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t22.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t22ActionPerformed(evt);
            }
        });
        t22.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t22KeyReleased(evt);
            }
        });

        t12.setBackground(new java.awt.Color(51, 51, 255));
        t12.setFont(new java.awt.Font("Tahoma", 0, 24));
        t12.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t12.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t12ActionPerformed(evt);
            }
        });
        t12.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t12KeyReleased(evt);
            }
        });

        t01.setBackground(new java.awt.Color(51, 51, 255));
        t01.setFont(new java.awt.Font("Tahoma", 0, 24));
        t01.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t01.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t01ActionPerformed(evt);
            }
        });
        t01.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t01KeyReleased(evt);
            }
        });

        t21.setBackground(new java.awt.Color(51, 51, 255));
        t21.setFont(new java.awt.Font("Tahoma", 0, 24));
        t21.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t21.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t21ActionPerformed(evt);
            }
        });
        t21.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t21KeyReleased(evt);
            }
        });

        t11.setBackground(new java.awt.Color(51, 51, 255));
        t11.setFont(new java.awt.Font("Tahoma", 0, 24));
        t11.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t11.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t11ActionPerformed(evt);
            }
        });
        t11.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t11KeyReleased(evt);
            }
        });

        t03.setFont(new java.awt.Font("Tahoma", 0, 24));
        t03.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t03.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t03ActionPerformed(evt);
            }
        });
        t03.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t03KeyReleased(evt);
            }
        });

        t23.setFont(new java.awt.Font("Tahoma", 0, 24));
        t23.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t23.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t23ActionPerformed(evt);
            }
        });
        t23.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t23KeyReleased(evt);
            }
        });

        t14.setFont(new java.awt.Font("Tahoma", 0, 24));
        t14.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t14.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t14ActionPerformed(evt);
            }
        });
        t14.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t14KeyReleased(evt);
            }
        });

        t24.setFont(new java.awt.Font("Tahoma", 0, 24));
        t24.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t24.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t24ActionPerformed(evt);
            }
        });
        t24.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t24KeyReleased(evt);
            }
        });

        t04.setFont(new java.awt.Font("Tahoma", 0, 24));
        t04.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t04.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t04ActionPerformed(evt);
            }
        });
        t04.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t04KeyReleased(evt);
            }
        });

        t15.setFont(new java.awt.Font("Tahoma", 0, 24));
        t15.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t15.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t15ActionPerformed(evt);
            }
        });
        t15.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t15KeyReleased(evt);
            }
        });

        t25.setFont(new java.awt.Font("Tahoma", 0, 24));
        t25.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t25.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t25ActionPerformed(evt);
            }
        });
        t25.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t25KeyReleased(evt);
            }
        });

        t05.setFont(new java.awt.Font("Tahoma", 0, 24));
        t05.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t05.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t05ActionPerformed(evt);
            }
        });
        t05.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t05KeyReleased(evt);
            }
        });

        t13.setFont(new java.awt.Font("Tahoma", 0, 24));
        t13.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t13.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t13ActionPerformed(evt);
            }
        });
        t13.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t13KeyReleased(evt);
            }
        });

        t16.setBackground(new java.awt.Color(51, 51, 255));
        t16.setFont(new java.awt.Font("Tahoma", 0, 24));
        t16.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t16.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t16ActionPerformed(evt);
            }
        });
        t16.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t16KeyReleased(evt);
            }
        });

        t18.setBackground(new java.awt.Color(51, 51, 255));
        t18.setFont(new java.awt.Font("Tahoma", 0, 24));
        t18.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t18.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t18ActionPerformed(evt);
            }
        });
        t18.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t18KeyReleased(evt);
            }
        });

        t07.setBackground(new java.awt.Color(51, 51, 255));
        t07.setFont(new java.awt.Font("Tahoma", 0, 24));
        t07.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t07.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t07ActionPerformed(evt);
            }
        });
        t07.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t07KeyReleased(evt);
            }
        });

        t08.setBackground(new java.awt.Color(51, 51, 255));
        t08.setFont(new java.awt.Font("Tahoma", 0, 24));
        t08.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t08.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t08ActionPerformed(evt);
            }
        });
        t08.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t08KeyReleased(evt);
            }
        });

        t28.setBackground(new java.awt.Color(51, 51, 255));
        t28.setFont(new java.awt.Font("Tahoma", 0, 24));
        t28.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t28.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t28ActionPerformed(evt);
            }
        });
        t28.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t28KeyReleased(evt);
            }
        });

        t06.setBackground(new java.awt.Color(51, 51, 255));
        t06.setFont(new java.awt.Font("Tahoma", 0, 24));
        t06.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t06.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t06ActionPerformed(evt);
            }
        });
        t06.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t06KeyReleased(evt);
            }
        });

        t26.setBackground(new java.awt.Color(51, 51, 255));
        t26.setFont(new java.awt.Font("Tahoma", 0, 24));
        t26.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t26.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t26ActionPerformed(evt);
            }
        });
        t26.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t26KeyReleased(evt);
            }
        });

        t17.setBackground(new java.awt.Color(51, 51, 255));
        t17.setFont(new java.awt.Font("Tahoma", 0, 24));
        t17.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t17.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t17ActionPerformed(evt);
            }
        });
        t17.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t17KeyReleased(evt);
            }
        });

        t27.setBackground(new java.awt.Color(51, 51, 255));
        t27.setFont(new java.awt.Font("Tahoma", 0, 24));
        t27.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t27.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t27ActionPerformed(evt);
            }
        });
        t27.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t27KeyReleased(evt);
            }
        });

        t57.setFont(new java.awt.Font("Tahoma", 0, 24));
        t57.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t57.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t57KeyReleased(evt);
            }
        });

        t47.setFont(new java.awt.Font("Tahoma", 0, 24));
        t47.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t47.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t47KeyReleased(evt);
            }
        });

        t51.setFont(new java.awt.Font("Tahoma", 0, 24));
        t51.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t51.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t51KeyReleased(evt);
            }
        });

        t56.setFont(new java.awt.Font("Tahoma", 0, 24));
        t56.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t56.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t56KeyReleased(evt);
            }
        });

        t31.setFont(new java.awt.Font("Tahoma", 0, 24));
        t31.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t31.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t31ActionPerformed(evt);
            }
        });
        t31.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t31KeyReleased(evt);
            }
        });

        t42.setFont(new java.awt.Font("Tahoma", 0, 24));
        t42.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t42.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t42KeyReleased(evt);
            }
        });

        t52.setFont(new java.awt.Font("Tahoma", 0, 24));
        t52.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t52.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t52KeyReleased(evt);
            }
        });

        t32.setFont(new java.awt.Font("Tahoma", 0, 24));
        t32.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t32.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t32ActionPerformed(evt);
            }
        });
        t32.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t32KeyReleased(evt);
            }
        });

        t40.setFont(new java.awt.Font("Tahoma", 0, 24));
        t40.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t40.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t40KeyReleased(evt);
            }
        });

        t46.setFont(new java.awt.Font("Tahoma", 0, 24));
        t46.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t46.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t46KeyReleased(evt);
            }
        });

        t30.setFont(new java.awt.Font("Tahoma", 0, 24));
        t30.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t30.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t30ActionPerformed(evt);
            }
        });
        t30.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t30KeyReleased(evt);
            }
        });

        t48.setFont(new java.awt.Font("Tahoma", 0, 24));
        t48.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t48.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t48KeyReleased(evt);
            }
        });

        t50.setFont(new java.awt.Font("Tahoma", 0, 24));
        t50.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t50.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t50KeyReleased(evt);
            }
        });

        t58.setFont(new java.awt.Font("Tahoma", 0, 24));
        t58.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t58.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t58KeyReleased(evt);
            }
        });

        t36.setFont(new java.awt.Font("Tahoma", 0, 24));
        t36.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t36.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t36KeyReleased(evt);
            }
        });

        t37.setFont(new java.awt.Font("Tahoma", 0, 24));
        t37.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t37.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t37KeyReleased(evt);
            }
        });

        t38.setFont(new java.awt.Font("Tahoma", 0, 24));
        t38.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t38.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t38KeyReleased(evt);
            }
        });

        t43.setBackground(new java.awt.Color(51, 51, 255));
        t43.setFont(new java.awt.Font("Tahoma", 0, 24));
        t43.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t43.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t43KeyReleased(evt);
            }
        });

        t45.setBackground(new java.awt.Color(51, 51, 255));
        t45.setFont(new java.awt.Font("Tahoma", 0, 24));
        t45.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t45.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t45KeyReleased(evt);
            }
        });

        t34.setBackground(new java.awt.Color(51, 51, 255));
        t34.setFont(new java.awt.Font("Tahoma", 0, 24));
        t34.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t34.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t34KeyReleased(evt);
            }
        });

        t35.setBackground(new java.awt.Color(51, 51, 255));
        t35.setFont(new java.awt.Font("Tahoma", 0, 24));
        t35.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t35.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t35KeyReleased(evt);
            }
        });

        t55.setBackground(new java.awt.Color(51, 51, 255));
        t55.setFont(new java.awt.Font("Tahoma", 0, 24));
        t55.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t55.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t55KeyReleased(evt);
            }
        });

        t33.setBackground(new java.awt.Color(51, 51, 255));
        t33.setFont(new java.awt.Font("Tahoma", 0, 24));
        t33.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t33.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                t33ActionPerformed(evt);
            }
        });
        t33.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t33KeyReleased(evt);
            }
        });

        t53.setBackground(new java.awt.Color(51, 51, 255));
        t53.setFont(new java.awt.Font("Tahoma", 0, 24));
        t53.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t53.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t53KeyReleased(evt);
            }
        });

        t44.setBackground(new java.awt.Color(51, 51, 255));
        t44.setFont(new java.awt.Font("Tahoma", 0, 24));
        t44.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t44.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t44KeyReleased(evt);
            }
        });

        t54.setBackground(new java.awt.Color(51, 51, 255));
        t54.setFont(new java.awt.Font("Tahoma", 0, 24));
        t54.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t54.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t54KeyReleased(evt);
            }
        });

        t41.setFont(new java.awt.Font("Tahoma", 0, 24));
        t41.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t41.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t41KeyReleased(evt);
            }
        });

        t68.setBackground(new java.awt.Color(51, 51, 255));
        t68.setFont(new java.awt.Font("Tahoma", 0, 24));
        t68.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t68.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t68KeyReleased(evt);
            }
        });

        t67.setBackground(new java.awt.Color(51, 51, 255));
        t67.setFont(new java.awt.Font("Tahoma", 0, 24));
        t67.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t67.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t67KeyReleased(evt);
            }
        });

        t75.setFont(new java.awt.Font("Tahoma", 0, 24));
        t75.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t75.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t75KeyReleased(evt);
            }
        });

        t73.setFont(new java.awt.Font("Tahoma", 0, 24));
        t73.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t73.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t73KeyReleased(evt);
            }
        });

        t80.setBackground(new java.awt.Color(51, 51, 255));
        t80.setFont(new java.awt.Font("Tahoma", 0, 24));
        t80.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t80.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t80KeyReleased(evt);
            }
        });

        t78.setBackground(new java.awt.Color(51, 51, 255));
        t78.setFont(new java.awt.Font("Tahoma", 0, 24));
        t78.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t78.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t78KeyReleased(evt);
            }
        });

        t66.setBackground(new java.awt.Color(51, 51, 255));
        t66.setFont(new java.awt.Font("Tahoma", 0, 24));
        t66.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t66.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t66KeyReleased(evt);
            }
        });

        t88.setBackground(new java.awt.Color(51, 51, 255));
        t88.setFont(new java.awt.Font("Tahoma", 0, 24));
        t88.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t88.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t88KeyReleased(evt);
            }
        });

        t64.setFont(new java.awt.Font("Tahoma", 0, 24));
        t64.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t64.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t64KeyReleased(evt);
            }
        });

        t65.setFont(new java.awt.Font("Tahoma", 0, 24));
        t65.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t65.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t65KeyReleased(evt);
            }
        });

        t83.setFont(new java.awt.Font("Tahoma", 0, 24));
        t83.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t83.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t83KeyReleased(evt);
            }
        });

        t74.setFont(new java.awt.Font("Tahoma", 0, 24));
        t74.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t74.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t74KeyReleased(evt);
            }
        });

        t84.setFont(new java.awt.Font("Tahoma", 0, 24));
        t84.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t84.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t84KeyReleased(evt);
            }
        });

        t71.setBackground(new java.awt.Color(51, 51, 255));
        t71.setFont(new java.awt.Font("Tahoma", 0, 24));
        t71.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t71.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t71KeyReleased(evt);
            }
        });

        t85.setFont(new java.awt.Font("Tahoma", 0, 24));
        t85.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t85.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t85KeyReleased(evt);
            }
        });

        t63.setFont(new java.awt.Font("Tahoma", 0, 24));
        t63.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t63.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t63KeyReleased(evt);
            }
        });

        t87.setBackground(new java.awt.Color(51, 51, 255));
        t87.setFont(new java.awt.Font("Tahoma", 0, 24));
        t87.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t87.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t87KeyReleased(evt);
            }
        });

        t76.setBackground(new java.awt.Color(51, 51, 255));
        t76.setFont(new java.awt.Font("Tahoma", 0, 24));
        t76.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t76.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t76KeyReleased(evt);
            }
        });

        t70.setBackground(new java.awt.Color(51, 51, 255));
        t70.setFont(new java.awt.Font("Tahoma", 0, 24));
        t70.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t70.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t70KeyReleased(evt);
            }
        });

        t60.setBackground(new java.awt.Color(51, 51, 255));
        t60.setFont(new java.awt.Font("Tahoma", 0, 24));
        t60.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t60.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t60KeyReleased(evt);
            }
        });

        t77.setBackground(new java.awt.Color(51, 51, 255));
        t77.setFont(new java.awt.Font("Tahoma", 0, 24));
        t77.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t77.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t77KeyReleased(evt);
            }
        });

        t81.setBackground(new java.awt.Color(51, 51, 255));
        t81.setFont(new java.awt.Font("Tahoma", 0, 24));
        t81.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t81.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t81KeyReleased(evt);
            }
        });

        t86.setBackground(new java.awt.Color(51, 51, 255));
        t86.setFont(new java.awt.Font("Tahoma", 0, 24));
        t86.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t86.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t86KeyReleased(evt);
            }
        });

        t61.setBackground(new java.awt.Color(51, 51, 255));
        t61.setFont(new java.awt.Font("Tahoma", 0, 24));
        t61.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t61.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t61KeyReleased(evt);
            }
        });

        t72.setBackground(new java.awt.Color(51, 51, 255));
        t72.setFont(new java.awt.Font("Tahoma", 0, 24));
        t72.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t72.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t72KeyReleased(evt);
            }
        });

        t82.setBackground(new java.awt.Color(51, 51, 255));
        t82.setFont(new java.awt.Font("Tahoma", 0, 24));
        t82.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t82.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t82KeyReleased(evt);
            }
        });

        t62.setBackground(new java.awt.Color(51, 51, 255));
        t62.setFont(new java.awt.Font("Tahoma", 0, 24));
        t62.setHorizontalAlignment(javax.swing.JTextField.CENTER);
        t62.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                t62KeyReleased(evt);
            }
        });

        etiquetaCrono.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
        etiquetaCrono.setForeground(new java.awt.Color(51, 51, 255));
        etiquetaCrono.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        etiquetaCrono.setText("00:00:00");
        etiquetaCrono.setBorder(javax.swing.BorderFactory.createEtchedBorder(javax.swing.border.EtchedBorder.RAISED, new java.awt.Color(51, 51, 255), java.awt.Color.white));

        botonRegistrarTiempo.setFont(new java.awt.Font("Tahoma", 1, 13)); // NOI18N
        botonRegistrarTiempo.setForeground(new java.awt.Color(51, 51, 255));
        botonRegistrarTiempo.setText("Registra tu tiempo");
        botonRegistrarTiempo.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                botonRegistrarTiempoActionPerformed(evt);
            }
        });

        jMenu1.setText("Archivo");

        MenuItemIniciarJuego.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK));
        MenuItemIniciarJuego.setText("Iniciar Juego");
        MenuItemIniciarJuego.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                MenuItemIniciarJuegoActionPerformed(evt);
            }
        });
        jMenu1.add(MenuItemIniciarJuego);

        MenuItemResolver.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_R, java.awt.event.InputEvent.CTRL_MASK));
        MenuItemResolver.setText("Resolver");
        MenuItemResolver.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                MenuItemResolverActionPerformed(evt);
            }
        });
        jMenu1.add(MenuItemResolver);

        MenuItemSugerirJugada.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_W, java.awt.event.InputEvent.CTRL_MASK));
        MenuItemSugerirJugada.setText("Sugerir Jugada");
        MenuItemSugerirJugada.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                MenuItemSugerirJugadaActionPerformed(evt);
            }
        });
        jMenu1.add(MenuItemSugerirJugada);
        jMenu1.add(jSeparator1);

        MenuItemSalir.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_S, java.awt.event.InputEvent.CTRL_MASK));
        MenuItemSalir.setText("Salir");
        MenuItemSalir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                MenuItemSalirActionPerformed(evt);
            }
        });
        jMenu1.add(MenuItemSalir);

        jMenuBar1.add(jMenu1);

        MenuOpciones.setText("Opciones ");

        MenuItemSudOnLine.setText("Ir a Sudoku Online ");
        MenuItemSudOnLine.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                MenuItemSudOnLineActionPerformed(evt);
            }
        });
        MenuOpciones.add(MenuItemSudOnLine);

        MenuMejoresPartidas.setText("Mejores Partidas");
        MenuMejoresPartidas.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                MenuMejoresPartidasActionPerformed(evt);
            }
        });
        MenuOpciones.add(MenuMejoresPartidas);

        jMenuBar1.add(MenuOpciones);

        MenuAyuda.setText("Ayuda");

        AcercaDe.setText("Acerca de Sudoku");
        AcercaDe.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                AcercaDeActionPerformed(evt);
            }
        });
        MenuAyuda.add(AcercaDe);

        jMenuBar1.add(MenuAyuda);

        setJMenuBar(jMenuBar1);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(67, 67, 67)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(t40, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t30, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t50, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t51, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t41, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t42, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t52, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t32, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addComponent(t31, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(7, 7, 7)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(t43, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t33, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t53, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t44, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t54, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t45, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t35, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t55, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addComponent(t34, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(t56, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t46, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t36, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t57, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t47, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t48, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t58, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t38, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addComponent(t37, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(t20, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t10, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t00, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(t01, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t21, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t11, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t22, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t12, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t02, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))))
                        .addGap(7, 7, 7)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(t03, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t23, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t13, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t14, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t24, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t15, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t25, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t05, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addComponent(t04, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(t16, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t06, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t26, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t17, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t27, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t18, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t08, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t28, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addComponent(t07, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(t80, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(t70, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(t60, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t71, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t81, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t72, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t82, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t62, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addComponent(t61, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(7, 7, 7)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(t73, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t83, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t63, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t74, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t84, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t75, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t65, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t85, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addComponent(t64, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(t66, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t76, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t86, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t87, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t77, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(t68, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t78, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t88, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addComponent(t67, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                        .addComponent(etiquetaCrono, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(error, javax.swing.GroupLayout.PREFERRED_SIZE, 289, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGap(12, 12, 12)
                            .addComponent(botonRegistrarTiempo, javax.swing.GroupLayout.PREFERRED_SIZE, 153, javax.swing.GroupLayout.PREFERRED_SIZE))))
                .addContainerGap(66, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(38, 38, 38)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(t06, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t16, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t26, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(t07, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(t08, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t18, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t28, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t17, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t27, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))))
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(t00, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t10, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t20, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(t01, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(t02, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t12, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t22, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t11, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t21, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))))
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(t03, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t13, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t23, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(t04, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(t05, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t15, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t25, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t14, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t24, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))))))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(t36, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t46, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t56, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(t37, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(t38, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t48, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t58, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t47, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t57, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))))
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(t30, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t40, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t50, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(t31, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(t32, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t42, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t52, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t41, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t51, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))))
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(t33, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t43, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t53, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(t34, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(t35, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t45, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t55, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t44, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t54, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))))))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(t66, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(t76, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(t86, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(t67, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(t68, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(t78, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(t88, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(t77, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(t87, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))))
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(t70, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t80, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(t61, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(t60, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addComponent(t62, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t72, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t82, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t71, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t81, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))))
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(t63, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t73, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(t83, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(t64, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(t65, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t75, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t85, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGroup(layout.createSequentialGroup()
                                    .addComponent(t74, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(t84, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))))))
                .addGap(61, 61, 61)
                .addComponent(error, javax.swing.GroupLayout.PREFERRED_SIZE, 24, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap())
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addGap(522, 522, 522)
                .addComponent(etiquetaCrono)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(botonRegistrarTiempo, javax.swing.GroupLayout.DEFAULT_SIZE, 34, Short.MAX_VALUE)
                .addGap(29, 29, 29))
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void MenuItemSalirActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_MenuItemSalirActionPerformed
        this.dispose();
    }//GEN-LAST:event_MenuItemSalirActionPerformed

    private void MenuItemResolverActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_MenuItemResolverActionPerformed
         ng =  ModeloSudoku.getInstanciaGenSud();
        //seteoTablero (ng.tablero2);
    }//GEN-LAST:event_MenuItemResolverActionPerformed

    private void MenuItemIniciarJuegoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_MenuItemIniciarJuegoActionPerformed
        GUISeleccionNivel ventana = new GUISeleccionNivel();
        ventana.setVisible(true);
    }//GEN-LAST:event_MenuItemIniciarJuegoActionPerformed

    private void MenuItemSudOnLineActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_MenuItemSudOnLineActionPerformed
        ControllerSudokuOnline ctrl = new ControllerSudokuOnline();
        ctrl.mostrarGUISudokuOnline();    
    }//GEN-LAST:event_MenuItemSudOnLineActionPerformed

    private void AcercaDeActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_AcercaDeActionPerformed
        try {
            try {
                Desktop.getDesktop().browse(new URI("http://es.wikipedia.org/wiki/Sudoku"));
            } catch (URISyntaxException ex) {
                Logger.getLogger(GUIPrincipal.class.getName()).log(Level.SEVERE, null, ex);
            }
        } catch (IOException ex) {
            Logger.getLogger(GUIPrincipal.class.getName()).log(Level.SEVERE, null, ex);
        }
    }//GEN-LAST:event_AcercaDeActionPerformed

    private void MenuItemSugerirJugadaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_MenuItemSugerirJugadaActionPerformed
        ng = ModeloSudoku.getInstanciaGenSud();
           int[][] tabla = ng.matriz;//ctrl.getTableroCargado();
           boolean var = false;
           int fila = 0;
           int col = 0;
           int cont = 0;
           for (int f = 0; f < 9; f++){
                for (int c = 0; c < 9; c++){
                    if (tabla[f][c] == 0){
                       var = true;
                       cont = cont +1;
                       System.out.println("mostrar el valor de var:" + cont);
                       fila = f;
                       col = c;
                       c = 9;
                       f = 9;
                    }
                }
           }      
           if (var) {
                ng.matriz[fila][col] = ng.tablero2[fila][col];
//                AgregarValorMatriz(fila,col,ng.tablero2[fila][col]);
                System.out.println(fila);
                System.out.println(col);
                System.out.println(ng.tablero2[fila][col]);
            }
           ng.terminado(ng.matriz);
    }//GEN-LAST:event_MenuItemSugerirJugadaActionPerformed

    private void MenuMejoresPartidasActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_MenuMejoresPartidasActionPerformed
        
    }//GEN-LAST:event_MenuMejoresPartidasActionPerformed

    private void t00ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t00ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t00ActionPerformed

    private void t01ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t01ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t01ActionPerformed

    private void t02ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t02ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t02ActionPerformed

    private void t03ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t03ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t03ActionPerformed

    private void t04ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t04ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t04ActionPerformed

    private void t05ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t05ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t05ActionPerformed

    private void t06ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t06ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t06ActionPerformed

    private void t07ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t07ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t07ActionPerformed

    private void t08ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t08ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t08ActionPerformed

    private void t10ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t10ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t10ActionPerformed

    private void t11ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t11ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t11ActionPerformed

    private void t12ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t12ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t12ActionPerformed

    private void t13ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t13ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t13ActionPerformed

    private void t14ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t14ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t14ActionPerformed

    private void t15ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t15ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t15ActionPerformed

    private void t16ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t16ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t16ActionPerformed

    private void t17ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t17ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t17ActionPerformed

    private void t18ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t18ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t18ActionPerformed

    private void t20ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t20ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t20ActionPerformed

    private void t21ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t21ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t21ActionPerformed

    private void t22ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t22ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t22ActionPerformed

    private void t23ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t23ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t23ActionPerformed

    private void t24ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t24ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t24ActionPerformed

    private void t25ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t25ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t25ActionPerformed

    private void t26ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t26ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t26ActionPerformed

    private void t27ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t27ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t27ActionPerformed

    private void t28ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t28ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t28ActionPerformed

    private void t30ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t30ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t30ActionPerformed

    private void t31ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t31ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t31ActionPerformed

    private void t32ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t32ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t32ActionPerformed

    private void t33ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t33ActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_t33ActionPerformed

    private void t00KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t00KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor(t00.getText())) {
            if (ng.existe_fila(Integer.valueOf(t00.getText()), 0)) {
                error.setText("El numero " + t01.getText() + " ya esta en la fila");
                t00.setText("");
            } else {
                if (ng.existe_columna(Integer.valueOf(t00.getText()), 1)) {
                    error.setText("El numero " + t01.getText() + " ya esta en la columna");
                    t00.setText("");
                } 
                else {

                    if (ng.existe_caja(Integer.valueOf(t00.getText()), 0, 1)) {
                        error.setText("El numero " + t00.getText() + " ya esta en la caja");
                        t00.setText("");
                    }
                    else {
                        ng.matriz[0][1] = Integer.valueOf(t00.getText());
                        error.setText("");
                        con++;
                    }
                }
        }
        } else {
            t00.setText("");
        }
        if (con == 0) {
            ng.matriz[0][0] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t00KeyReleased

    private void t01KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t01KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor(t01.getText())) {
            if (ng.existe_fila(Integer.valueOf(t01.getText()), 0)) {
                error.setText("El numero " + t01.getText() + " ya esta en la fila");
                t01.setText("");
            } else {
                if (ng.existe_columna(Integer.valueOf(t01.getText()), 1)) {
                    error.setText("El numero " + t01.getText() + " ya esta en la columna");
                    t01.setText("");
                } 
                else {

                    if (ng.existe_caja(Integer.valueOf(t01.getText()), 0, 1)) {
                        error.setText("El numero " + t01.getText() + " ya esta en la caja");
                        t01.setText("");
                    }
                    else {
                        ng.matriz[0][1] = Integer.valueOf(t01.getText());
                        error.setText("");
                        con++;
                    }
                }
        }
        } else {
            t01.setText("");
        }
        if (con == 0) {
            ng.matriz[0][1] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t01KeyReleased

    private void t02KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t02KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor(t02.getText())) {
        if (ng.existe_fila(Integer.valueOf(t02.getText()), 0)) {
            error.setText("El numero " + t02.getText() + " ya esta en la fila");
            t02.setText("");
        }
        else {
            if (ng.existe_columna(Integer.valueOf(t02.getText()), 2)) {
                error.setText("El numero " + t02.getText() + " ya esta en la columna");
                t02.setText("");
            }
            else {
                if (ng.existe_caja(Integer.valueOf(t02.getText()), 0, 2)) {
                    error.setText("El numero " + t02.getText() + " ya esta en la caja");
                    t02.setText("");
                }
                else {
                    ng.matriz[0][2] = Integer.valueOf(t02.getText());
                    error.setText("");
                    con++;
                }
            }
        }
        }
        else {
            t02.setText("");
        }
        if (con == 0) {
            ng.matriz[0][2] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t02KeyReleased

    private void t03KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t03KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t03.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t03.getText()), 0)) {
                error.setText("El numero " + t03.getText() + " ya esta en la fila");
                t03.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t03.getText()), 3)) {
                    error.setText("El numero " + t03.getText() + " ya esta en la columna");
                    t03.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t03.getText()), 0, 3)) {
                        error.setText("El numero " + t03.getText() + " ya esta en la caja");
                        t03.setText("");
                    }
                    else {
                        ng.matriz[0][3] = Integer.valueOf(t03.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t03.setText("");
        }
        if (con == 0) {
            ng.matriz[0][3] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t03KeyReleased

    private void t04KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t04KeyReleased
         int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t04.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t04.getText()), 0)) {
                error.setText("El numero " + t04.getText() + " ya esta en la fila");
                t04.setText("");
            } 
            else {
                if (ng.existe_columna(Integer.valueOf(t04.getText()), 4)) {
                    error.setText("El numero " + t04.getText() + " ya esta en la columna");
                    t04.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t04.getText()), 0, 4)) {
                        error.setText("El numero " + t04.getText() + " ya esta en la caja");
                        t04.setText("");
                    }
                    else {
                        ng.matriz[0][4] = Integer.valueOf(t04.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t04.setText("");
        }
        if (con == 0) {
            ng.matriz[0][4] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t04KeyReleased

    private void t05KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t05KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t05.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t05.getText()), 0)) {
                error.setText("El numero " + t05.getText() + " ya esta en la fila");
                t05.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t05.getText()), 5)) {
                    error.setText("El numero " + t05.getText() + " ya esta en la columna");
                    t05.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t05.getText()), 0, 5)) {
                        error.setText("El numero " + t05.getText() + " ya esta en la caja");
                        t05.setText("");
                    }
                    else {
                        ng.matriz[0][5] = Integer.valueOf(t05.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t05.setText("");
        }
        if (con == 0) {
            ng.matriz[0][5] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t05KeyReleased

    private void t06KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t06KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor(t06.getText())) {
            if (ng.existe_fila(Integer.valueOf(t06.getText()), 0)) {
                error.setText("El numero " + t06.getText() + " ya esta en la fila");
                t06.setText("");
            } 
            else {
                if (ng.existe_columna(Integer.valueOf(t06.getText()), 6)) {
                    error.setText("El numero " + t06.getText() + " ya esta en la columna");
                    t06.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t06.getText()), 0, 6)) {
                        error.setText("El numero " + t06.getText() + " ya esta en la caja");
                        t06.setText("");
                    } 
                    else {
                        ng.matriz[0][6] = Integer.valueOf(t06.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t06.setText("");
        }
        if (con == 0) {
            ng.matriz[0][6] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t06KeyReleased

    private void t07KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t07KeyReleased
       int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor(t07.getText())) {
            if (ng.existe_fila(Integer.valueOf(t07.getText()), 0)) {
                error.setText("El numero " + t07.getText() + " ya esta en la fila");
                t07.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t07.getText()), 7)) {
                    error.setText("El numero " + t07.getText() + " ya esta en la columna");
                    t07.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t07.getText()), 0, 7)) {
                        error.setText("El numero " + t07.getText() + " ya esta en la caja");
                        t07.setText("");
                    }
                    else {
                        ng.matriz[0][7] = Integer.valueOf(t07.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t07.setText("");
        }
        if (con == 0) {
            ng.matriz[0][7] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t07KeyReleased

    private void t08KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t08KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t08.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t08.getText()), 0)) {
                error.setText("El numero " + t08.getText() + " ya esta en la fila");
                t08.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t08.getText()), 8)) {
                    error.setText("El numero " + t08.getText() + " ya esta en la columna");
                    t08.setText("");
                }
                else {

                    if (ng.existe_caja(Integer.valueOf(t08.getText()), 0, 8)) {
                        error.setText("El numero " + t08.getText() + " ya esta en la caja");
                        t08.setText("");
                    }
                    else {
                        ng.matriz[0][8] = Integer.valueOf(t08.getText());
                        error.setText("");
                        con++;
                    }
                    }
            }
        }
        else {
            t08.setText("");
        }
        if (con == 0) {
            ng.matriz[0][8] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t08KeyReleased

    private void t10KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t10KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t10.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t10.getText()), 1)) {
                error.setText("El numero " + t10.getText() + " ya esta en la fila");
                t10.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t10.getText()), 0)) {
                    error.setText("El numero " + t10.getText() + " ya esta en la columna");
                    t10.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t10.getText()), 1, 0)) {
                        error.setText("El numero " + t10.getText() + " ya esta en la caja");
                        t10.setText("");
                    }
                    else {
                        ng.matriz[1][0] = Integer.valueOf(t10.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t10.setText("");
        }
        if (con == 0) {
            ng.matriz[1][0] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t10KeyReleased

    private void t11KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t11KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t11.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t11.getText()), 1)) {
                error.setText("El numero " + t11.getText() + " ya esta en la fila");
                t11.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t11.getText()), 1)) {
                    error.setText("El numero " + t11.getText() + " ya esta en la columna");
                    t11.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t11.getText()), 1, 1)) {
                        error.setText("El numero " + t11.getText() + " ya esta en la caja");
                        t11.setText("");
                    }
                    else {
                        ng.matriz[1][1] = Integer.valueOf(t11.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t11.setText("");
        }
        if (con == 0) {
            ng.matriz[1][1] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t11KeyReleased

    private void t12KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t12KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t12.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t12.getText()), 1)) {
                error.setText("El numero " + t12.getText() + " ya esta en la fila");
                t12.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t12.getText()), 2)) {
                    error.setText("El numero " + t12.getText() + " ya esta en la columna");
                    t12.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t12.getText()), 1, 2)) {
                        error.setText("El numero " + t12.getText() + " ya esta en la caja");
                        t12.setText("");
                    }
                    else {
                        ng.matriz[1][2] = Integer.valueOf(t12.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t12.setText("");
        }
        if (con == 0) {
            ng.matriz[1][2] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t12KeyReleased

    private void t13KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t13KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t13.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t13.getText()), 1)) {
                error.setText("El numero " + t13.getText() + " ya esta en la fila");
                t13.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t13.getText()), 3)) {
                    error.setText("El numero " + t13.getText() + " ya esta en la columna");
                    t13.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t13.getText()), 1, 3)) {
                        error.setText("El numero " + t13.getText() + " ya esta en la caja");
                        t13.setText("");
                    }
                    else {
                        ng.matriz[1][3] = Integer.valueOf(t13.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t13.setText("");
        }
        if (con == 0) {
            ng.matriz[1][3] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t13KeyReleased

    private void t14KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t14KeyReleased
       int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t14.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t14.getText()), 1)) {
                error.setText("El numero " + t14.getText() + " ya esta en la fila");
                t14.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t14.getText()), 4)) {
                    error.setText("El numero " + t14.getText() + " ya esta en la columna");
                    t14.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t14.getText()), 1, 4)) {
                        error.setText("El numero " + t14.getText() + " ya esta en la caja");
                        t14.setText("");
                    }
                    else {
                        ng.matriz[1][4] = Integer.valueOf(t14.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t14.setText("");
        }
        if (con == 0) {
            ng.matriz[1][4] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t14KeyReleased

    private void t15KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t15KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t15.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t15.getText()), 1)) {
                error.setText("El numero " + t15.getText() + " ya esta en la fila");
                t15.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t15.getText()), 5)) {
                    error.setText("El numero " + t15.getText() + " ya esta en la columna");
                    t15.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t15.getText()), 1, 5)) {
                        error.setText("El numero " + t15.getText() + " ya esta en la caja");
                        t15.setText("");
                    }
                    else {
                        ng.matriz[1][5] = Integer.valueOf(t15.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t15.setText("");
        }
        if (con == 0) {
            ng.matriz[1][5] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t15KeyReleased

    private void t16KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t16KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t16.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t16.getText()), 1)) {
                error.setText("El numero " + t16.getText() + " ya esta en la fila");
                t16.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t16.getText()), 6)) {
                    error.setText("El numero " + t16.getText() + " ya esta en la columna");
                    t16.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t16.getText()), 1, 6)) {
                        error.setText("El numero " + t16.getText() + " ya esta en la caja");
                        t16.setText("");
                    }
                    else {
                        ng.matriz[1][6] = Integer.valueOf(t16.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t16.setText("");
        }
        if (con == 0) {
            ng.matriz[1][6] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t16KeyReleased

    private void t17KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t17KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t17.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t17.getText()), 1)) {
                error.setText("El numero " + t17.getText() + " ya esta en la fila");
                t17.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t17.getText()), 7)) {
                    error.setText("El numero " + t17.getText() + " ya esta en la columna");
                    t17.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t17.getText()), 1, 7)) {
                        error.setText("El numero " + t17.getText() + " ya esta en la caja");
                        t17.setText("");
                    }
                    else {
                        ng.matriz[1][7] = Integer.valueOf(t17.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t17.setText("");
        }
        if (con == 0) {
            ng.matriz[1][7] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t17KeyReleased

    private void t18KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t18KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor(t18.getText())) {
            if (ng.existe_fila(Integer.valueOf(t18.getText()), 1)) {
                error.setText("El numero " + t18.getText() + " ya esta en la fila");
                t18.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t18.getText()), 8)) {
                    error.setText("El numero " + t18.getText() + " ya esta en la columna");
                    t18.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t18.getText()), 1, 8)) {
                        error.setText("El numero " + t18.getText() + " ya esta en la caja");
                        t18.setText("");
                    }
                    else {
                        ng.matriz[1][8] = Integer.valueOf(t18.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t18.setText("");
        }
        if (con == 0) {
            ng.matriz[1][8] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t18KeyReleased

    private void t20KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t20KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t20.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t20.getText()), 2)) {
                error.setText("El numero " + t20.getText() + " ya esta en la fila");
                t20.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t20.getText()), 0)) {
                    error.setText("El numero " + t20.getText() + " ya esta en la columna");
                    t20.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t20.getText()), 2, 0)) {
                        error.setText("El numero " + t20.getText() + " ya esta en la caja");
                        t20.setText("");
                    }
                    else {
                        ng.matriz[2][0] = Integer.valueOf(t20.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t20.setText("");
        }
        if (con == 0) {
            ng.matriz[2][0] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t20KeyReleased

    private void t21KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t21KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor(t21.getText())) {
            if (ng.existe_fila(Integer.valueOf(t21.getText()), 2)) {
                error.setText("El numero " + t21.getText() + " ya esta en la fila");
                t21.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t21.getText()), 1)) {
                    error.setText("El numero " + t21.getText() + " ya esta en la columna");
                    t21.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t21.getText()), 2, 1)) {
                        error.setText("El numero " + t21.getText() + " ya esta en la caja");
                        t21.setText("");
                    }
                    else {
                        ng.matriz[2][1] = Integer.valueOf(t21.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t21.setText("");
        }
        if (con == 0) {
            ng.matriz[2][1] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t21KeyReleased

    private void t22KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t22KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor(t22.getText())) {
            if (ng.existe_fila(Integer.valueOf(t22.getText()), 2)) {
                error.setText("El numero " + t22.getText() + " ya esta en la fila");
                t22.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t22.getText()), 2)) {
                    error.setText("El numero " + t22.getText() + " ya esta en la columna");
                    t22.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t22.getText()), 2, 2)) {
                        error.setText("El numero " + t22.getText() + " ya esta en la caja");
                        t22.setText("");
                    }
                    else {
                        ng.matriz[2][2] = Integer.valueOf(t22.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t22.setText("");
        }
        if (con == 0) {
            ng.matriz[2][2] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t22KeyReleased

    private void t23KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t23KeyReleased
        int con = 0;
         ng =  ModeloSudoku.getInstanciaGenSud();
         if (ng.comprobar_valor(t23.getText())) {
            if (ng.existe_fila(Integer.valueOf(t23.getText()), 2)) {
                error.setText("El numero " + t23.getText() + " ya esta en la fila");
                t23.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t23.getText()), 3)) {
                    error.setText("El numero " + t23.getText() + " ya esta en la columna");
                    t23.setText("");
                }
                else {
                   if (ng.existe_caja(Integer.valueOf(t23.getText()), 2, 3)) {
                        error.setText("El numero " + t23.getText() + " ya esta en la caja");
                        t23.setText("");
                   }
                   else {
                        ng.matriz[2][3] = Integer.valueOf(t23.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t23.setText("");
        }
        if (con == 0) {
            ng.matriz[2][3] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t23KeyReleased

    private void t24KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t24KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t24.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t24.getText()), 2)) {
                error.setText("El numero " + t24.getText() + " ya esta en la fila");
                t24.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t24.getText()), 4)) {
                    error.setText("El numero " + t24.getText() + " ya esta en la columna");
                    t24.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t24.getText()), 2, 4)) {
                        error.setText("El numero " + t24.getText() + " ya esta en la caja");
                        t24.setText("");
                    }
                    else {
                        ng.matriz[2][4] = Integer.valueOf(t24.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t24.setText("");
        }
        if (con == 0) {
            ng.matriz[2][4] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t24KeyReleased

    private void t25KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t25KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t25.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t25.getText()), 2)) {
                error.setText("El numero " + t25.getText() + " ya esta en la fila");
                t25.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t25.getText()), 5)) {
                    error.setText("El numero " + t25.getText() + " ya esta en la columna");
                    t25.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t25.getText()), 2, 5)) {
                        error.setText("El numero " + t25.getText() + " ya esta en la caja");
                        t25.setText("");
                    }
                    else {
                        ng.matriz[2][5] = Integer.valueOf(t25.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t25.setText("");
        }
        if (con == 0) {
            ng.matriz[2][5] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t25KeyReleased

    private void t26KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t26KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor(t26.getText())) {
            if (ng.existe_fila(Integer.valueOf(t26.getText()), 2)) {
                error.setText("El numero " + t26.getText() + " ya esta en la fila");
                t26.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t26.getText()), 6)) {
                    error.setText("El numero " + t26.getText() + " ya esta en la columna");
                    t26.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t26.getText()), 2, 6)) {
                        error.setText("El numero " + t26.getText() + " ya esta en la caja");
                        t26.setText("");
                    }
                    else {
                        ng.matriz[2][6] = Integer.valueOf(t26.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t26.setText("");
        }
        if (con == 0) {
            ng.matriz[2][6] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t26KeyReleased

    private void t27KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t27KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t27.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t27.getText()), 2)) {
                error.setText("El numero " + t27.getText() + " ya esta en la fila");
                t27.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t27.getText()), 7)) {
                    error.setText("El numero " + t27.getText() + " ya esta en la columna");
                    t27.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t27.getText()), 2, 7)) {
                        error.setText("El numero " + t27.getText() + " ya esta en la caja");
                        t27.setText("");
                    }
                    else {
                        ng.matriz[2][7] = Integer.valueOf(t27.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t27.setText("");
        }
        if (con == 0) {
            ng.matriz[2][7] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t27KeyReleased

    private void t28KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t28KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t28.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t28.getText()), 2)) {
                error.setText("El numero " + t28.getText() + " ya esta en la fila");
                t28.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t28.getText()), 8)) {
                    error.setText("El numero " + t28.getText() + " ya esta en la columna");
                    t28.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t28.getText()), 2, 8)) {
                        error.setText("El numero " + t28.getText() + " ya esta en la caja");
                        t28.setText("");
                    }
                    else {
                        ng.matriz[2][8] = Integer.valueOf(t28.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t28.setText("");
        }
        if (con == 0) {
            ng.matriz[2][8] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t28KeyReleased

    private void t30KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t30KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t30.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t30.getText()), 3)) {
                error.setText("El numero " + t30.getText() + " ya esta en la fila");
                t30.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t30.getText()), 0)) {
                    error.setText("El numero " + t30.getText() + " ya esta en la columna");
                    t30.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t30.getText()), 3, 0)) {
                        error.setText("El numero " + t30.getText() + " ya esta en la caja");
                        t30.setText("");
                    }
                    else {
                        ng.matriz[3][0] = Integer.valueOf(t30.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t30.setText("");
        }
        if (con == 0) {
            ng.matriz[3][0] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t30KeyReleased

    private void t31KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t31KeyReleased
       int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t31.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t31.getText()), 3)) {
                error.setText("El numero " + t31.getText() + " ya esta en la fila");
                t31.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t31.getText()), 1)) {
                    error.setText("El numero " + t31.getText() + " ya esta en la columna");
                    t31.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t31.getText()), 3, 1)) {
                        error.setText("El numero " + t31.getText() + " ya esta en la caja");
                        t31.setText("");
                    }
                    else {
                        ng.matriz[3][1] = Integer.valueOf(t31.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t31.setText("");
        }
        if (con == 0) {
            ng.matriz[3][1] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t31KeyReleased

    private void t32KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t32KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t32.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t32.getText()), 3)) {
                error.setText("El numero " + t32.getText() + " ya esta en la fila");
                t32.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t32.getText()), 2)) {
                    error.setText("El numero " + t32.getText() + " ya esta en la columna");
                    t32.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t32.getText()), 3, 2)) {
                        error.setText("El numero " + t32.getText() + " ya esta en la caja");
                        t32.setText("");
                    }
                    else {
                        ng.matriz[3][2] = Integer.valueOf(t32.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t32.setText("");
        }
        if (con == 0) {
            ng.matriz[3][2] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t32KeyReleased

    private void t33KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t33KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t33.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t33.getText()), 3)) {
                error.setText("El numero " + t33.getText() + " ya esta en la fila");
                t33.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t33.getText()), 3)) {
                    error.setText("El numero " + t33.getText() + " ya esta en la columna");
                    t33.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t33.getText()), 3, 3)) {
                        error.setText("El numero " + t33.getText() + " ya esta en la caja");
                        t33.setText("");
                    }
                    else {
                        ng.matriz[3][3] = Integer.valueOf(t33.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t33.setText("");
        }
        if (con == 0) {
            ng.matriz[3][3] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t33KeyReleased

    private void t34KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t34KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t34.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t34.getText()), 3)) {
                error.setText("El numero " + t34.getText() + " ya esta en la fila");
                t34.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t34.getText()), 4)) {
                    error.setText("El numero " + t34.getText() + " ya esta en la columna");
                    t34.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t34.getText()), 3, 4)) {
                        error.setText("El numero " + t34.getText() + " ya esta en la caja");
                        t34.setText("");
                    }
                    else {
                        ng.matriz[3][4] = Integer.valueOf(t34.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t34.setText("");
        }
        if (con == 0) {
            ng.matriz[3][4] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t34KeyReleased

    private void t35KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t35KeyReleased
        int con = 0;
         ng =  ModeloSudoku.getInstanciaGenSud();
         if (ng.comprobar_valor((t35.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t35.getText()), 3)) {
                error.setText("El numero " + t35.getText() + " ya esta en la fila");
                t35.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t35.getText()), 5)) {
                    error.setText("El numero " + t35.getText() + " ya esta en la columna");
                    t35.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t35.getText()), 3, 5)) {
                        error.setText("El numero " + t35.getText() + " ya esta en la caja");
                        t35.setText("");
                    }
                    else {
                        ng.matriz[3][5] = Integer.valueOf(t35.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t35.setText("");
        }
        if (con == 0) {
            ng.matriz[3][5] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t35KeyReleased

    private void t36KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t36KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor(t36.getText())) {
            if (ng.existe_fila(Integer.valueOf(t36.getText()), 3)) {
                error.setText("El numero " + t36.getText() + " ya esta en la fila");
                t36.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t36.getText()), 6)) {
                    error.setText("El numero " + t36.getText() + " ya esta en la columna");
                    t36.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t36.getText()), 3, 6)) {
                        error.setText("El numero " + t36.getText() + " ya esta en la caja");
                        t36.setText("");
                    }
                    else {
                        ng.matriz[3][6] = Integer.valueOf(t36.getText());
                        error.setText("");
                        con++;
                    }
                }
                
            }
        }
        else {
            t36.setText("");
        }
        if (con == 0) {
            ng.matriz[3][6] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t36KeyReleased

    private void t37KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t37KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t37.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t37.getText()), 3)) {
                error.setText("El numero " + t37.getText() + " ya esta en la fila");
                t37.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t37.getText()), 7)) {
                    error.setText("El numero " + t37.getText() + " ya esta en la columna");
                    t37.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t37.getText()), 3, 7)) {
                        error.setText("El numero " + t37.getText() + " ya esta en la caja");
                        t37.setText("");
                    }
                    else {
                        ng.matriz[3][7] = Integer.valueOf(t37.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t37.setText("");
        }
        if (con == 0) {
            ng.matriz[3][7] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t37KeyReleased

    private void t38KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t38KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t38.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t38.getText()), 3)) {
                error.setText("El numero " + t38.getText() + " ya esta en la fila");
                t38.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t38.getText()), 8)) {
                    error.setText("El numero " + t38.getText() + " ya esta en la columna");
                    t38.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t38.getText()), 3, 8)) {
                        error.setText("El numero " + t38.getText() + " ya esta en la caja");
                        t38.setText("");
                    }
                    else {
                        ng.matriz[3][8] = Integer.valueOf(t38.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t38.setText("");
        }
        if (con == 0) {
            ng.matriz[3][8] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t38KeyReleased

    private void t40KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t40KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t40.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t40.getText()), 4)) {
                error.setText("El numero " + t40.getText() + " ya esta en la fila");
                t40.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t40.getText()), 0)) {
                    error.setText("El numero " + t40.getText() + " ya esta en la columna");
                    t40.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t40.getText()), 4, 0)) {
                        error.setText("El numero " + t40.getText() + " ya esta en la caja");
                        t40.setText("");
                    }
                    else {
                        ng.matriz[4][0] = Integer.valueOf(t40.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t40.setText("");
        }
        if (con == 0) {
            ng.matriz[4][0] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t40KeyReleased

    private void t41KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t41KeyReleased
       int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t41.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t41.getText()), 4)) {
                error.setText("El numero " + t41.getText() + " ya esta en la fila");
                t41.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t41.getText()), 1)) {
                    error.setText("El numero " + t41.getText() + " ya esta en la columna");
                    t41.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t41.getText()), 4, 1)) {
                        error.setText("El numero " + t41.getText() + " ya esta en la caja");
                        t41.setText("");
                    }
                    else {
                        ng.matriz[4][1] = Integer.valueOf(t41.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t41.setText("");
        }
        if (con == 0) {
            ng.matriz[4][1] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t41KeyReleased

    private void t42KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t42KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t42.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t42.getText()), 4)) {
                error.setText("El numero " + t42.getText() + " ya esta en la fila");
                t42.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t42.getText()), 2)) {
                    error.setText("El numero " + t42.getText() + " ya esta en la columna");
                    t42.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t42.getText()), 4, 2)) {
                        error.setText("El numero " + t42.getText() + " ya esta en la caja");
                        t42.setText("");
                    }
                    else {
                        ng.matriz[4][2] = Integer.valueOf(t42.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t42.setText("");
        }
        if (con == 0) {
            ng.matriz[4][2] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t42KeyReleased

    private void t43KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t43KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t43.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t43.getText()), 4)) {
                error.setText("El numero " + t43.getText() + " ya esta en la fila");
                t43.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t43.getText()), 3)) {
                    error.setText("El numero " + t43.getText() + " ya esta en la columna");
                    t43.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t43.getText()), 4, 3)) {
                        error.setText("El numero " + t43.getText() + " ya esta en la caja");
                        t43.setText("");
                    }
                    else {
                        ng.matriz[4][3] = Integer.valueOf(t43.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t43.setText("");
        }
        if (con == 0) {
            ng.matriz[4][3] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t43KeyReleased

    private void t44KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t44KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t44.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t44.getText()), 4)) {
                error.setText("El numero " + t44.getText() + " ya esta en la fila");
                t44.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t44.getText()), 4)) {
                    error.setText("El numero " + t44.getText() + " ya esta en la columna");
                    t44.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t44.getText()), 4, 4)) {
                        error.setText("El numero " + t44.getText() + " ya esta en la caja");
                        t44.setText("");
                    }
                    else {
                        ng.matriz[4][4] = Integer.valueOf(t44.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t44.setText("");
        }
        if (con == 0) {
            ng.matriz[4][4] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t44KeyReleased

    private void t45KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t45KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t45.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t45.getText()), 4)) {
                error.setText("El numero " + t45.getText() + " ya esta en la fila");
                t45.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t45.getText()), 5)) {
                    error.setText("El numero " + t45.getText() + " ya esta en la columna");
                    t45.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t45.getText()), 4, 5)) {
                        error.setText("El numero " + t45.getText() + " ya esta en la caja");
                        t45.setText("");
                    }
                    else {
                    ng.matriz[4][5] = Integer.valueOf(t45.getText());
                    error.setText("");
                    con++;
                    }
                }
            }
        }
        else {
            t45.setText("");
        }
        if (con == 0) {
            ng.matriz[4][5] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t45KeyReleased

    private void t46KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t46KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t46.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t46.getText()), 4)) {
                error.setText("El numero " + t46.getText() + " ya esta en la fila");
                t46.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t46.getText()), 6)) {
                    error.setText("El numero " + t46.getText() + " ya esta en la columna");
                    t46.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t46.getText()), 4, 6)) {
                        error.setText("El numero " + t46.getText() + " ya esta en la caja");
                        t46.setText("");
                    }
                    else {
                        ng.matriz[4][6] = Integer.valueOf(t46.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t46.setText("");
        }
        if (con == 0) {
            ng.matriz[4][6] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t46KeyReleased

    private void t47KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t47KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t47.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t47.getText()), 4)) {
                error.setText("El numero " + t47.getText() + " ya esta en la fila");
                t47.setText("");
             } 
            else {
                if (ng.existe_columna(Integer.valueOf(t47.getText()), 7)) {
                error.setText("El numero " + t47.getText() + " ya esta en la columna");
                t47.setText("");
                } 
                else {
                    if (ng.existe_caja(Integer.valueOf(t47.getText()), 4, 7)) {
                        error.setText("El numero " + t47.getText() + " ya esta en la caja");
                        t47.setText("");
                    } 
                    else {
                        ng.matriz[4][7] = Integer.valueOf(t47.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t47.setText("");
        }
        if (con == 0) {
        ng.matriz[4][7] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t47KeyReleased

    private void t48KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t48KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t48.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t48.getText()), 4)) {
                error.setText("El numero " + t48.getText() + " ya esta en la fila");
                t48.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t48.getText()), 8)) {
                    error.setText("El numero " + t48.getText() + " ya esta en la columna");
                    t48.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t48.getText()), 4, 8)) {
                        error.setText("El numero " + t48.getText() + " ya esta en la caja");
                        t48.setText("");
                    }
                    else {
                        ng.matriz[4][8] = Integer.valueOf(t48.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t48.setText("");
        }
        if (con == 0) {
            ng.matriz[4][8] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t48KeyReleased

    private void t50KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t50KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t50.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t50.getText()), 5)) {
                error.setText("El numero " + t50.getText() + " ya esta en la fila");
                t50.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t50.getText()), 0)) {
                    error.setText("El numero " + t50.getText() + " ya esta en la columna");
                    t50.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t50.getText()), 5, 0)) {
                        error.setText("El numero " + t50.getText() + " ya esta en la caja");
                        t50.setText("");
                    }
                    else {
                        ng.matriz[5][0] = Integer.valueOf(t50.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t50.setText("");
        }
        if (con == 0) {
            ng.matriz[5][0] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t50KeyReleased

    private void t51KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t51KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t51.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t51.getText()), 5)) {
                error.setText("El numero " + t51.getText() + " ya esta en la fila");
                t51.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t51.getText()), 1)) {
                    error.setText("El numero " + t51.getText() + " ya esta en la columna");
                    t51.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t51.getText()), 5, 1)) {
                        error.setText("El numero " + t51.getText() + " ya esta en la caja");
                        t51.setText("");
                    }
                    else {
                        ng.matriz[5][1] = Integer.valueOf(t51.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t51.setText("");
        }
        if (con == 0) {
            ng.matriz[5][1] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t51KeyReleased

    private void t52KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t52KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t52.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t52.getText()), 5)) {
                error.setText("El numero " + t52.getText() + " ya esta en la fila");
                t52.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t52.getText()), 2)) {
                    error.setText("El numero " + t52.getText() + " ya esta en la columna");
                    t52.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t52.getText()), 5, 2)) {
                        error.setText("El numero " + t52.getText() + " ya esta en la caja");
                        t52.setText("");
                    }
                    else {
                        ng.matriz[5][2] = Integer.valueOf(t52.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t52.setText("");
        }
        if (con == 0) {
            ng.matriz[5][2] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t52KeyReleased

    private void t53KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t53KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t53.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t53.getText()), 5)) {
                error.setText("El numero " + t53.getText() + " ya esta en la fila");
                t53.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t53.getText()), 3)) {
                    error.setText("El numero " + t53.getText() + " ya esta en la columna");
                    t53.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t53.getText()), 5, 3)) {
                        error.setText("El numero " + t53.getText() + " ya esta en la caja");
                        t53.setText("");
                    }
                    else {
                        ng.matriz[5][3] = Integer.valueOf(t53.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t53.setText("");
        }
        if (con == 0) {
            ng.matriz[5][3] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t53KeyReleased

    private void t54KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t54KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t54.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t54.getText()), 5)) {
                error.setText("El numero " + t54.getText() + " ya esta en la fila");
                t54.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t54.getText()), 4)) {
                    error.setText("El numero " + t54.getText() + " ya esta en la columna");
                    t54.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t54.getText()), 5, 4)) {
                        error.setText("El numero " + t54.getText() + " ya esta en la caja");
                        t54.setText("");
                    }
                    else {
                        ng.matriz[5][4] = Integer.valueOf(t54.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t54.setText("");
        }
        if (con == 0) {
            ng.matriz[5][4] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t54KeyReleased

    private void t55KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t55KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t55.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t55.getText()), 5)) {
                error.setText("El numero " + t55.getText() + " ya esta en la fila");
                t55.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t55.getText()), 5)) {
                    error.setText("El numero " + t55.getText() + " ya esta en la columna");
                    t55.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t55.getText()), 5, 5)) {
                        error.setText("El numero " + t55.getText() + " ya esta en la caja");
                        t55.setText("");
                    }
                    else {
                        ng.matriz[5][5] = Integer.valueOf(t55.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t55.setText("");
        }
        if (con == 0) {
            ng.matriz[5][5] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t55KeyReleased

    private void t56KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t56KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t56.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t56.getText()), 5)) {
                error.setText("El numero " + t56.getText() + " ya esta en la fila");
                t56.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t56.getText()), 6)) {
                    error.setText("El numero " + t56.getText() + " ya esta en la columna");
                    t56.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t56.getText()), 5, 6)) {
                        error.setText("El numero " + t56.getText() + " ya esta en la caja");
                        t56.setText("");
                    }
                    else {
                        ng.matriz[5][6] = Integer.valueOf(t56.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t56.setText("");
        }
        if (con == 0) {
            ng.matriz[5][6] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t56KeyReleased

    private void t57KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t57KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t57.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t57.getText()), 5)) {
                error.setText("El numero " + t57.getText() + " ya esta en la fila");
                t57.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t57.getText()), 7)) {
                    error.setText("El numero " + t57.getText() + " ya esta en la columna");
                    t57.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t57.getText()), 5, 7)) {
                        error.setText("El numero " + t57.getText() + " ya esta en la caja");
                        t57.setText("");
                    }
                    else {
                        ng.matriz[5][7] = Integer.valueOf(t57.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t57.setText("");
        }
        if (con == 0) {
            ng.matriz[5][7] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t57KeyReleased

    private void t58KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t58KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t58.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t58.getText()), 5)) {
                error.setText("El numero " + t58.getText() + " ya esta en la fila");
                t58.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t58.getText()), 8)) {
                    error.setText("El numero " + t58.getText() + " ya esta en la columna");
                    t58.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t58.getText()), 5, 8)) {
                        error.setText("El numero " + t58.getText() + " ya esta en la caja");
                        t58.setText("");
                    }
                    else {
                        ng.matriz[5][8] = Integer.valueOf(t58.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t58.setText("");
        }
        if (con == 0) {
            ng.matriz[5][8] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t58KeyReleased

    private void t60KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t60KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t60.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t60.getText()), 6)) {
                error.setText("El numero " + t60.getText() + " ya esta en la fila");
                t60.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t60.getText()), 0)) {
                    error.setText("El numero " + t60.getText() + " ya esta en la columna");
                    t60.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t60.getText()), 6, 0)) {
                        error.setText("El numero " + t60.getText() + " ya esta en la caja");
                        t60.setText("");
                    }
                    else {
                        ng.matriz[6][0] = Integer.valueOf(t60.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t60.setText("");
        }
        if (con == 0) {
            ng.matriz[6][0] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t60KeyReleased

    private void t61KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t61KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t61.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t61.getText()), 6)) {
                error.setText("El numero " + t61.getText() + " ya esta en la fila");
                t61.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t61.getText()), 1)) {
                    error.setText("El numero " + t61.getText() + " ya esta en la columna");
                    t61.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t61.getText()), 6, 1)) {
                        error.setText("El numero " + t61.getText() + " ya esta en la caja");
                        t61.setText("");
                    }
                    else {
                        ng.matriz[6][1] = Integer.valueOf(t61.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t61.setText("");
        }
        if (con == 0) {
            ng.matriz[6][1] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t61KeyReleased

    private void t62KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t62KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t62.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t62.getText()), 6)) {
                error.setText("El numero " + t62.getText() + " ya esta en la fila");
                t62.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t62.getText()), 2)) {
                    error.setText("El numero " + t62.getText() + " ya esta en la columna");
                    t62.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t62.getText()), 6, 2)) {
                        error.setText("El numero " + t62.getText() + " ya esta en la caja");
                        t62.setText("");
                    }
                    else {
                        ng.matriz[6][2] = Integer.valueOf(t62.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t62.setText("");
        }
        if (con == 0) {
            ng.matriz[6][2] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t62KeyReleased

    private void t63KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t63KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor(t63.getText())) {
            if (ng.existe_fila(Integer.valueOf(t63.getText()), 6)) {
                error.setText("El numero " + t63.getText() + " ya esta en la fila");
                t63.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t63.getText()), 3)) {
                    error.setText("El numero " + t63.getText() + " ya esta en la columna");
                    t63.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t63.getText()), 6, 3)) {
                        error.setText("El numero " + t63.getText() + " ya esta en la caja");
                        t63.setText("");
                    }
                    else {
                        ng.matriz[6][3] = Integer.valueOf(t63.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t63.setText("");
        }
        if (con == 0) {
            ng.matriz[6][3] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t63KeyReleased

    private void t64KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t64KeyReleased
       int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t64.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t64.getText()), 6)) {
                error.setText("El numero " + t64.getText() + " ya esta en la fila");
                t64.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t64.getText()), 4)) {
                    error.setText("El numero " + t64.getText() + " ya esta en la columna");
                    t64.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t64.getText()), 6, 4)) {
                        error.setText("El numero " + t64.getText() + " ya esta en la caja");
                        t64.setText("");
                    }
                    else {
                        ng.matriz[6][4] = Integer.valueOf(t64.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t64.setText("");
        }
        if (con == 0) {
            ng.matriz[6][4] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t64KeyReleased

    private void t65KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t65KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t65.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t65.getText()), 6)) {
                error.setText("El numero " + t65.getText() + " ya esta en la fila");
                t65.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t65.getText()), 5)) {
                    error.setText("El numero " + t65.getText() + " ya esta en la columna");
                    t65.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t65.getText()), 6, 5)) {
                        error.setText("El numero " + t65.getText() + " ya esta en la caja");
                        t65.setText("");
                    }
                    else {
                        ng.matriz[6][5] = Integer.valueOf(t65.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t65.setText("");
        }
        if (con == 0) {
            ng.matriz[6][5] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t65KeyReleased

    private void t66KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t66KeyReleased
         int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t66.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t66.getText()), 6)) {
                error.setText("El numero " + t66.getText() + " ya esta en la fila");
                t66.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t66.getText()), 6)) {
                    error.setText("El numero " + t66.getText() + " ya esta en la columna");
                    t66.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t66.getText()), 6, 6)) {
                        error.setText("El numero " + t66.getText() + " ya esta en la caja");
                        t66.setText("");
                    }
                    else {
                        ng.matriz[6][6] = Integer.valueOf(t66.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t66.setText("");
        }
        if (con == 0) {
            ng.matriz[6][6] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t66KeyReleased

    private void t67KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t67KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t67.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t67.getText()), 6)) {
                error.setText("El numero " + t67.getText() + " ya esta en la fila");
                t67.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t67.getText()), 7)) {
                    error.setText("El numero " + t67.getText() + " ya esta en la columna");
                    t67.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t67.getText()), 6, 7)) {
                        error.setText("El numero " + t67.getText() + " ya esta en la caja");
                        t67.setText("");
                    }
                    else {
                        ng.matriz[6][7] = Integer.valueOf(t67.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t67.setText("");
        }
        if (con == 0) {
            ng.matriz[6][7] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t67KeyReleased

    private void t68KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t68KeyReleased
         int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t68.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t68.getText()), 6)) {
                error.setText("El numero " + t68.getText() + " ya esta en la fila");
                t68.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t68.getText()), 8)) {
                    error.setText("El numero " + t68.getText() + " ya esta en la columna");
                    t68.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t68.getText()), 6, 8)) {
                        error.setText("El numero " + t68.getText() + " ya esta en la caja");
                        t68.setText("");
                    }
                    else {
                        ng.matriz[6][8] = Integer.valueOf(t68.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t68.setText("");
        }
        if (con == 0) {
            ng.matriz[6][8] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t68KeyReleased

    private void t70KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t70KeyReleased
         int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t70.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t70.getText()), 7)) {
                error.setText("El numero " + t70.getText() + " ya esta en la fila");
                t70.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t70.getText()), 0)) {
                    error.setText("El numero " + t70.getText() + " ya esta en la columna");
                    t11.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t70.getText()), 7, 0)) {
                        error.setText("El numero " + t70.getText() + " ya esta en la caja");
                        t70.setText("");
                    }
                    else {
                        ng.matriz[7][0] = Integer.valueOf(t70.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t70.setText("");
        }
        if (con == 0) {
            ng.matriz[7][0] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t70KeyReleased

    private void t71KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t71KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t71.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t71.getText()), 7)) {
                error.setText("El numero " + t71.getText() + " ya esta en la fila");
                t71.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t71.getText()), 1)) {
                    error.setText("El numero " + t71.getText() + " ya esta en la columna");
                    t71.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t71.getText()), 7, 1)) {
                        error.setText("El numero " + t71.getText() + " ya esta en la caja");
                        t71.setText("");
                    }
                    else {
                        ng.matriz[7][1] = Integer.valueOf(t71.getText());
                        error.setText("");
                        con++;
                    }   
                }
            }
        }
        else {
            t71.setText("");
        }
        if (con == 0) {
            ng.matriz[7][1] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t71KeyReleased

    private void t72KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t72KeyReleased
         int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t72.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t72.getText()), 7)) {
                error.setText("El numero " + t72.getText() + " ya esta en la fila");
                t72.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t72.getText()), 2)) {
                    error.setText("El numero " + t72.getText() + " ya esta en la columna");
                    t72.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t72.getText()), 7, 2)) {
                        error.setText("El numero " + t72.getText() + " ya esta en la caja");
                        t72.setText("");
                    }
                    else {
                        ng.matriz[7][2] = Integer.valueOf(t72.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t72.setText("");
        }
        if (con == 0) {
            ng.matriz[7][2] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t72KeyReleased

    private void t73KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t73KeyReleased
       int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t73.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t73.getText()), 7)) {
                error.setText("El numero " + t73.getText() + " ya esta en la fila");
                t73.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t73.getText()), 3)) {
                    error.setText("El numero " + t73.getText() + " ya esta en la columna");
                    t73.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t73.getText()), 7, 3)) {
                        error.setText("El numero " + t73.getText() + " ya esta en la caja");
                        t73.setText("");
                    }
                    else {
                        ng.matriz[7][3] = Integer.valueOf(t73.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t73.setText("");
        }
        if (con == 0) {
            ng.matriz[7][3] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t73KeyReleased

    private void t74KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t74KeyReleased
         int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t74.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t74.getText()), 7)) {
                error.setText("El numero " + t74.getText() + " ya esta en la fila");
                t74.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t74.getText()), 4)) {
                    error.setText("El numero " + t74.getText() + " ya esta en la columna");
                    t74.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t74.getText()), 7, 4)) {
                            error.setText("El numero " + t74.getText() + " ya esta en la caja");
                            t74.setText("");
                    }
                    else {
                        ng.matriz[7][4] = Integer.valueOf(t74.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t74.setText("");
        }
        if (con == 0) {
             ng.matriz[7][4] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t74KeyReleased

    private void t75KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t75KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t75.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t75.getText()), 7)) {
                error.setText("El numero " + t75.getText() + " ya esta en la fila");
                t75.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t75.getText()), 5)) {
                    error.setText("El numero " + t75.getText() + " ya esta en la columna");
                    t75.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t75.getText()), 7, 5)) {
                        error.setText("El numero " + t75.getText() + " ya esta en la caja");
                        t75.setText("");
                    }
                    else {
                        ng.matriz[7][5] = Integer.valueOf(t75.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t75.setText("");
        }
        if (con == 0) {
            ng.matriz[7][5] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t75KeyReleased

    private void t76KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t76KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t76.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t76.getText()), 7)) {
                error.setText("El numero " + t76.getText() + " ya esta en la fila");
                t76.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t76.getText()), 6)) {
                    error.setText("El numero " + t76.getText() + " ya esta en la columna");
                    t76.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t76.getText()), 7, 6)) {
                        error.setText("El numero " + t76.getText() + " ya esta en la caja");
                        t76.setText("");
                    }
                    else {
                        ng.matriz[7][6] = Integer.valueOf(t76.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t76.setText("");
        }
        if (con == 0) {
            ng.matriz[7][6] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t76KeyReleased

    private void t77KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t77KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t77.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t77.getText()), 7)) {
                error.setText("El numero " + t77.getText() + " ya esta en la fila");
                t77.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t77.getText()), 7)) {
                    error.setText("El numero " + t77.getText() + " ya esta en la columna");
                    t77.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t77.getText()), 7, 7)) {
                        error.setText("El numero " + t77.getText() + " ya esta en la caja");
                        t77.setText("");
                    }
                    else {
                        ng.matriz[7][7] = Integer.valueOf(t77.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t77.setText("");
        }
        if (con == 0) {
            ng.matriz[7][7] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t77KeyReleased

    private void t78KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t78KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t78.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t78.getText()), 7)) {
                error.setText("El numero " + t78.getText() + " ya esta en la fila");
                t78.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t78.getText()), 8)) {
                    error.setText("El numero " + t78.getText() + " ya esta en la columna");
                    t78.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t78.getText()), 7, 8)) {
                        error.setText("El numero " + t78.getText() + " ya esta en la caja");
                        t78.setText("");
                    }
                    else {
                        ng.matriz[7][8] = Integer.valueOf(t78.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t78.setText("");
        }
        if (con == 0) {
            ng.matriz[7][8] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t78KeyReleased

    private void t80KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t80KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t80.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t80.getText()), 8)) {
                error.setText("El numero " + t80.getText() + " ya esta en la fila");
                t80.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t80.getText()), 0)) {
                    error.setText("El numero " + t80.getText() + " ya esta en la columna");
                    t80.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t80.getText()), 8, 0)) {
                        error.setText("El numero " + t80.getText() + " ya esta en la caja");
                        t80.setText("");
                    }
                    else {
                        ng.matriz[8][0] = Integer.valueOf(t80.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t80.setText("");
        }
        if (con == 0) {
            ng.matriz[8][0] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t80KeyReleased

    private void t81KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t81KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t81.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t81.getText()), 8)) {
                error.setText("El numero " + t81.getText() + " ya esta en la fila");
                t81.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t81.getText()), 1)) {
                    error.setText("El numero " + t81.getText() + " ya esta en la columna");
                    t81.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t81.getText()), 8, 1)) {
                        error.setText("El numero " + t81.getText() + " ya esta en la caja");
                        t81.setText("");
                    }
                    else {
                        ng.matriz[8][1] = Integer.valueOf(t81.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t81.setText("");
        }
        if (con == 0) {
            ng.matriz[8][1] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t81KeyReleased

    private void t82KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t82KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t82.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t82.getText()), 8)) {
                error.setText("El numero " + t82.getText() + " ya esta en la fila");
                t82.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t82.getText()), 2)) {
                    error.setText("El numero " + t82.getText() + " ya esta en la columna");
                    t82.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t82.getText()), 8, 2)) {
                        error.setText("El numero " + t82.getText() + " ya esta en la caja");
                        t82.setText("");
                    }
                    else {
                        ng.matriz[8][2] = Integer.valueOf(t82.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t82.setText("");
        }
        if (con == 0) {
            ng.matriz[8][2] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t82KeyReleased

    private void t83KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t83KeyReleased
       int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t83.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t83.getText()), 8)) {
                error.setText("El numero " + t83.getText() + " ya esta en la fila");
                t83.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t83.getText()), 3)) {
                    error.setText("El numero " + t83.getText() + " ya esta en la columna");
                    t83.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t83.getText()), 8, 3)) {
                        error.setText("El numero " + t83.getText() + " ya esta en la caja");
                        t83.setText("");
                    }
                    else {
                        ng.matriz[8][3] = Integer.valueOf(t83.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t83.setText("");
        }
        if (con == 0) {
             ng.matriz[8][3] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t83KeyReleased

    private void t84KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t84KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t84.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t84.getText()), 8)) {
                error.setText("El numero " + t84.getText() + " ya esta en la fila");
                t84.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t84.getText()), 4)) {
                    error.setText("El numero " + t84.getText() + " ya esta en la columna");
                    t84.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t84.getText()), 8, 4)) {
                        error.setText("El numero " + t84.getText() + " ya esta en la caja");
                        t84.setText("");
                    }
                    else {
                        ng.matriz[8][4] = Integer.valueOf(t84.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t84.setText("");
        }
        if (con == 0) {
             ng.matriz[8][4] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t84KeyReleased

    private void t85KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t85KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t85.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t85.getText()), 8)) {
                error.setText("El numero " + t85.getText() + " ya esta en la fila");
                t85.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t85.getText()), 5)) {
                    error.setText("El numero " + t85.getText() + " ya esta en la columna");
                    t85.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t85.getText()), 8, 5)) {
                        error.setText("El numero " + t85.getText() + " ya esta en la caja");
                        t85.setText("");
                    }
                    else {
                        ng.matriz[8][5] = Integer.valueOf(t85.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t85.setText("");
        }
        if (con == 0) {
            ng.matriz[8][5] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t85KeyReleased

    private void t86KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t86KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t86.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t86.getText()), 8)) {
                error.setText("El numero " + t86.getText() + " ya esta en la fila");
                t86.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t86.getText()), 6)) {
                    error.setText("El numero " + t86.getText() + " ya esta en la columna");
                    t86.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t86.getText()), 8, 6)) {
                        error.setText("El numero " + t86.getText() + " ya esta en la caja");
                        t86.setText("");
                    }
                    else {
                        ng.matriz[8][6] = Integer.valueOf(t86.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t86.setText("");
        }
        if (con == 0) {
            ng.matriz[8][6] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t86KeyReleased

    private void t87KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t87KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t87.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t87.getText()), 8)) {
                error.setText("El numero " + t87.getText() + " ya esta en la fila");
                t87.setText("");
            }
            else {
                if (ng.existe_columna(Integer.valueOf(t87.getText()), 7)) {
                    error.setText("El numero " + t87.getText() + " ya esta en la columna");
                    t87.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t87.getText()), 8, 7)) {
                        error.setText("El numero " + t87.getText() + " ya esta en la caja");
                        t87.setText("");
                    }
                    else {
                        ng.matriz[8][7] = Integer.valueOf(t87.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t87.setText("");
        }
        if (con == 0) {
            ng.matriz[8][7] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t87KeyReleased

    private void t88KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t88KeyReleased
        int con = 0;
        ng =  ModeloSudoku.getInstanciaGenSud();
        if (ng.comprobar_valor((t88.getText()))) {
            if (ng.existe_fila(Integer.valueOf(t88.getText()), 8)) {
                error.setText("El numero " + t88.getText() + " ya esta en la fila");
                t88.setText("");
            } 
            else {
                if (ng.existe_columna(Integer.valueOf(t88.getText()), 8)) {
                    error.setText("El numero " + t88.getText() + " ya esta en la columna");
                    t88.setText("");
                }
                else {
                    if (ng.existe_caja(Integer.valueOf(t88.getText()), 8, 8)) {
                        error.setText("El numero " + t88.getText() + " ya esta en la caja");
                        t88.setText("");
                   }
                    else {
                        ng.matriz[8][8] = Integer.valueOf(t88.getText());
                        error.setText("");
                        con++;
                    }
                }
            }
        }
        else {
            t88.setText("");
        }
        if (con == 0) {
            ng.matriz[8][8] = 0;
        }
        ModeloSudoku.terminado(ng.matriz);
    }//GEN-LAST:event_t88KeyReleased

    private void botonRegistrarTiempoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_botonRegistrarTiempoActionPerformed
        GUICargaJugadores.crearInstanciaGUICargaJugadores();
        GUICargaJugadores guiJ = GUICargaJugadores.getIntanciaGUICarga();
        guiJ.setVisible(true);
    }//GEN-LAST:event_botonRegistrarTiempoActionPerformed

     private void seteoTablero(int[][] tablero) {
        t00.setText(String.valueOf(tablero[0][0]));
        t00.setEditable(false);
        t01.setText(String.valueOf(tablero[0][1]));
        t01.setEditable(false);
        t02.setText(String.valueOf(tablero[0][2]));
        t02.setEditable(false);
        t03.setText(String.valueOf(tablero[0][3]));
        t03.setEditable(false);    
        t04.setText(String.valueOf(tablero[0][4]));
        t04.setEditable(false);
        t05.setText(String.valueOf(tablero[0][5]));
        t05.setEditable(false);
        t06.setText(String.valueOf(tablero[0][6]));
        t06.setEditable(false);
        t07.setText(String.valueOf(tablero[0][7]));
        t07.setEditable(false);
        t08.setText(String.valueOf(tablero[0][8]));
        t08.setEditable(false);
        t10.setText(String.valueOf(tablero[1][0]));
        t10.setEditable(false);
        t11.setText(String.valueOf(tablero[1][1]));
        t11.setEditable(false);
        t12.setText(String.valueOf(tablero[1][2]));
        t12.setEditable(false);
        t13.setText(String.valueOf(tablero[1][3]));
        t13.setEditable(false);    
        t14.setText(String.valueOf(tablero[1][4]));
        t14.setEditable(false);
        t15.setText(String.valueOf(tablero[1][5]));
        t15.setEditable(false);
        t16.setText(String.valueOf(tablero[1][6]));
        t16.setEditable(false);
        t17.setText(String.valueOf(tablero[1][7]));
        t17.setEditable(false);
        t18.setText(String.valueOf(tablero[1][8]));
        t18.setEditable(false);
        t20.setText(String.valueOf(tablero[2][0]));
        t20.setEditable(false);
        t21.setText(String.valueOf(tablero[2][1]));
        t21.setEditable(false);
        t22.setText(String.valueOf(tablero[2][2]));
        t22.setEditable(false);
        t23.setText(String.valueOf(tablero[2][3]));
        t23.setEditable(false);    
        t24.setText(String.valueOf(tablero[2][4]));
        t24.setEditable(false);
        t25.setText(String.valueOf(tablero[2][5]));
        t25.setEditable(false);
        t26.setText(String.valueOf(tablero[2][6]));
        t26.setEditable(false);
        t27.setText(String.valueOf(tablero[2][7]));
        t27.setEditable(false);
        t28.setText(String.valueOf(tablero[2][8]));
        t28.setEditable(false);
        t30.setText(String.valueOf(tablero[3][0]));
        t30.setEditable(false);
        t31.setText(String.valueOf((tablero[3][1])));
        t31.setEditable(false);
        t32.setText(String.valueOf((tablero[3][2])));
        t32.setEditable(false);
        t33.setText(String.valueOf((tablero[3][3])));
        t33.setEditable(false);    
        t34.setText(String.valueOf((tablero[3][4])));
        t34.setEditable(false);
        t35.setText(String.valueOf((tablero[3][5])));
        t35.setEditable(false);
        t36.setText(String.valueOf((tablero[3][6])));
        t36.setEditable(false);
        t37.setText(String.valueOf((tablero[3][7])));
        t37.setEditable(false);
        t38.setText(String.valueOf((tablero[3][8])));
        t38.setEditable(false);
        t40.setText(String.valueOf((tablero[4][0])));
        t40.setEditable(false);
        t41.setText(String.valueOf(tablero[4][1]));
        t41.setEditable(false);
        t42.setText(String.valueOf(tablero[4][2]));
        t42.setEditable(false);
        t43.setText(String.valueOf(tablero[4][3]));
        t43.setEditable(false);    
        t44.setText(String.valueOf(tablero[4][4]));
        t44.setEditable(false);
        t45.setText(String.valueOf(tablero[4][5]));
        t45.setEditable(false);
        t46.setText(String.valueOf(tablero[4][6]));
        t46.setEditable(false);
        t47.setText(String.valueOf(tablero[4][7]));
        t47.setEditable(false);
        t48.setText(String.valueOf(tablero[4][8]));
        t48.setEditable(false);
        t50.setText(String.valueOf(tablero[5][0]));
        t50.setEditable(false);
        t51.setText(String.valueOf(tablero[5][1]));
        t51.setEditable(false);
        t52.setText(String.valueOf(tablero[5][2]));
        t52.setEditable(false);
        t53.setText(String.valueOf(tablero[5][3]));
        t53.setEditable(false);    
        t54.setText(String.valueOf(tablero[5][4]));
        t54.setEditable(false);
        t55.setText(String.valueOf(tablero[5][5]));
        t55.setEditable(false);
        t56.setText(String.valueOf(tablero[5][6]));
        t56.setEditable(false);
        t57.setText(String.valueOf(tablero[5][7]));
        t57.setEditable(false);
        t58.setText(String.valueOf(tablero[5][8]));
        t58.setEditable(false);
        t60.setText(String.valueOf(tablero[6][0]));
        t60.setEditable(false);
        t61.setText(String.valueOf(tablero[6][1]));
        t61.setEditable(false);
        t62.setText(String.valueOf(tablero[6][2]));
        t62.setEditable(false);
        t63.setText(String.valueOf(tablero[6][3]));
        t63.setEditable(false);    
        t64.setText(String.valueOf(tablero[6][4]));
        t64.setEditable(false);
        t65.setText(String.valueOf(tablero[6][5]));
        t65.setEditable(false);
        t66.setText(String.valueOf(tablero[6][6]));
        t66.setEditable(false);
        t67.setText(String.valueOf(tablero[6][7]));
        t67.setEditable(false);
        t68.setText(String.valueOf(tablero[6][8]));
        t68.setEditable(false);
        t70.setText(String.valueOf(tablero[7][0]));
        t70.setEditable(false);
        t71.setText(String.valueOf(tablero[7][1]));
        t71.setEditable(false);
        t72.setText(String.valueOf(tablero[7][2]));
        t72.setEditable(false);
        t73.setText(String.valueOf(tablero[7][3]));
        t73.setEditable(false);    
        t74.setText(String.valueOf(tablero[7][4]));
        t74.setEditable(false);
        t75.setText(String.valueOf(tablero[7][5]));
        t75.setEditable(false);
        t76.setText(String.valueOf(tablero[7][6]));
        t76.setEditable(false);
        t77.setText(String.valueOf(tablero[7][7]));
        t77.setEditable(false);
        t78.setText(String.valueOf(tablero[7][8]));
        t78.setEditable(false);
        t80.setText(String.valueOf(tablero[8][0]));
        t80.setEditable(false);
        t81.setText(String.valueOf(tablero[8][1]));
        t81.setEditable(false);
        t82.setText(String.valueOf(tablero[8][2]));
        t82.setEditable(false);
        t83.setText(String.valueOf(tablero[8][3]));
        t83.setEditable(false);    
        t84.setText(String.valueOf(tablero[8][4]));
        t84.setEditable(false);
        t85.setText(String.valueOf(tablero[8][5]));
        t85.setEditable(false);
        t86.setText(String.valueOf(tablero[8][6]));
        t86.setEditable(false);
        t87.setText(String.valueOf(tablero[8][7]));
        t87.setEditable(false);
        t88.setText(String.valueOf(tablero[8][8]));
        t88.setEditable(false);
    }
    
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JMenuItem AcercaDe;
    private javax.swing.JMenu MenuAyuda;
    private javax.swing.JMenuItem MenuItemIniciarJuego;
    private javax.swing.JMenuItem MenuItemResolver;
    private javax.swing.JMenuItem MenuItemSalir;
    private javax.swing.JMenuItem MenuItemSudOnLine;
    private javax.swing.JMenuItem MenuItemSugerirJugada;
    private javax.swing.JMenuItem MenuMejoresPartidas;
    private javax.swing.JMenu MenuOpciones;
    private javax.swing.JButton botonRegistrarTiempo;
    private javax.swing.JLabel error;
    private javax.swing.JLabel etiquetaCrono;
    private javax.swing.JMenu jMenu1;
    private javax.swing.JMenuBar jMenuBar1;
    private javax.swing.JPopupMenu.Separator jSeparator1;
    private javax.swing.JTextField t00;
    private javax.swing.JTextField t01;
    private javax.swing.JTextField t02;
    private javax.swing.JTextField t03;
    private javax.swing.JTextField t04;
    private javax.swing.JTextField t05;
    private javax.swing.JTextField t06;
    private javax.swing.JTextField t07;
    private javax.swing.JTextField t08;
    private javax.swing.JTextField t10;
    private javax.swing.JTextField t11;
    private javax.swing.JTextField t12;
    private javax.swing.JTextField t13;
    private javax.swing.JTextField t14;
    private javax.swing.JTextField t15;
    private javax.swing.JTextField t16;
    private javax.swing.JTextField t17;
    private javax.swing.JTextField t18;
    private javax.swing.JTextField t20;
    private javax.swing.JTextField t21;
    private javax.swing.JTextField t22;
    private javax.swing.JTextField t23;
    private javax.swing.JTextField t24;
    private javax.swing.JTextField t25;
    private javax.swing.JTextField t26;
    private javax.swing.JTextField t27;
    private javax.swing.JTextField t28;
    private javax.swing.JTextField t30;
    private javax.swing.JTextField t31;
    private javax.swing.JTextField t32;
    private javax.swing.JTextField t33;
    private javax.swing.JTextField t34;
    private javax.swing.JTextField t35;
    private javax.swing.JTextField t36;
    private javax.swing.JTextField t37;
    private javax.swing.JTextField t38;
    private javax.swing.JTextField t40;
    private javax.swing.JTextField t41;
    private javax.swing.JTextField t42;
    private javax.swing.JTextField t43;
    private javax.swing.JTextField t44;
    private javax.swing.JTextField t45;
    private javax.swing.JTextField t46;
    private javax.swing.JTextField t47;
    private javax.swing.JTextField t48;
    private javax.swing.JTextField t50;
    private javax.swing.JTextField t51;
    private javax.swing.JTextField t52;
    private javax.swing.JTextField t53;
    private javax.swing.JTextField t54;
    private javax.swing.JTextField t55;
    private javax.swing.JTextField t56;
    private javax.swing.JTextField t57;
    private javax.swing.JTextField t58;
    private javax.swing.JTextField t60;
    private javax.swing.JTextField t61;
    private javax.swing.JTextField t62;
    private javax.swing.JTextField t63;
    private javax.swing.JTextField t64;
    private javax.swing.JTextField t65;
    private javax.swing.JTextField t66;
    private javax.swing.JTextField t67;
    private javax.swing.JTextField t68;
    private javax.swing.JTextField t70;
    private javax.swing.JTextField t71;
    private javax.swing.JTextField t72;
    private javax.swing.JTextField t73;
    private javax.swing.JTextField t74;
    private javax.swing.JTextField t75;
    private javax.swing.JTextField t76;
    private javax.swing.JTextField t77;
    private javax.swing.JTextField t78;
    private javax.swing.JTextField t80;
    private javax.swing.JTextField t81;
    private javax.swing.JTextField t82;
    private javax.swing.JTextField t83;
    private javax.swing.JTextField t84;
    private javax.swing.JTextField t85;
    private javax.swing.JTextField t86;
    private javax.swing.JTextField t87;
    private javax.swing.JTextField t88;
    // End of variables declaration//GEN-END:variables

    @Override
    public void update(Observable o, Object arg) {
        try {
            String stg = arg.toString();
            int n = Integer.parseInt(stg);
            switch (n) {
                case 1: this.updateTiempo();break;
            }
        }catch(Exception e){}
    }

    private void updateTiempo() {
        this.setCronometro(crono.getTiempo());
    }
    
    private void setCronometro(String tiempo) {
        this.etiquetaCrono.setText(tiempo);
    }
}
